這周準(zhǔn)備了四級(jí)队魏,但是更重要的是,那個(gè)毛概要補(bǔ)考了万搔,一會(huì)兒晚上考試胡桨,水一篇,這周的東西都總結(jié)完了瞬雹。
符
比如:
3<1?A:b
如果3<1 是的話就是A 不是的話就是b
System.out.println(3>2?"A":"B");//輸出A
七昧谊、字符串去空格
//去除所有
String str = rd.next();
String str2 = str.replaceAll(" ", "");
System.out.println(str2);
//去除首尾
String str = "? 123? ";
System.out.println(str.trim());
......
八、equals()酗捌、==呢诬、equalsIgnoreCase()
//equals() 會(huì)判斷大小寫區(qū)別,equalsIgnoreCase() 不會(huì)判斷大小寫區(qū)別
基本類型:比較的就是值是否相同
引用類型:比較的就是地址值是否相同equals 的作用:
九胖缤、next()與nextLine()的區(qū)別
//如果寫成scanner.next()就會(huì)錯(cuò)誤尚镰,因?yàn)橹挥衝extLine()可以輸入像空格、回車一樣的字符
十哪廓、String和StringBuilder的區(qū)別
//String的對(duì)象不可變
//StringBuilder中字符可變
十一狗唉、toCharArray()方法
//是一個(gè)將字符串轉(zhuǎn)化為字符數(shù)組的方法。
String a = new String("Mustang");
char []b = a.toCharArray();
System.out.println(b[2]); //最終輸出的結(jié)果為s;
十二涡真、substring()方法
//返回字符串的子串
//substring(a)和substring(a分俯,b)
public static void main(String[] args) {
String num = "0123456789";
String ab1 = num.substring(2, 6);
String ab2 = num.substring(1, 8);
String a = num.substring(3);
System.out.println("ab1的值:" + ab1);
System.out.println("ab2的值:" + ab2);
System.out.println("a的值:" + a);
}
}
輸出結(jié)果:
ab1的值:2345
ab2的值:1234567
a的值:3456789
總結(jié):
1.java中String元素下標(biāo)從0開始,substring(a)是從第a個(gè)字符開始截取哆料,包含第a個(gè)字符缸剪。可以看成數(shù)學(xué)中的[ )东亦,表示左閉右開區(qū)間
2.substring(a, b)表示截取下標(biāo)從a開始到b結(jié)束的字符橄登,包含第a個(gè)字符但是不包含第b個(gè)字符,可以看成[a,b)讥此。
十三拢锹、保留有效數(shù)字
System.out.printf("%6.4f\n",BMI);
// .前為一共幾位數(shù)字;.后為小數(shù)點(diǎn)后幾位萄喳;BMI為該數(shù)字
十四卒稳、BigDecimal
BigDecimal是處理高精度的浮點(diǎn)數(shù)運(yùn)算的常用的一個(gè)類
當(dāng)需要將BigDecimal中保存的浮點(diǎn)數(shù)值打印出來,特別是在頁面上顯示的時(shí)候他巨,就有可能遇到預(yù)想之外的科學(xué)技術(shù)法表示的問題充坑。
一般直接使用 BigDecimal.toString()方法即可以完成浮點(diǎn)數(shù)的打印减江。如:
System.out.println( new BigDecimal("10000000000").toString());
但是,toString()方法輸出的字符串并不能保證不是科學(xué)計(jì)數(shù)法捻爷。
不過在日常的使用中辈灼,用toString()方法輸出的就是普通的數(shù)字字符串而非科學(xué)計(jì)數(shù)法。直接這么寫:
System.out.println( new BigDecimal("100.000").toString());
程序的輸出即為:? 100.000
如果我們希望去除末尾多余的0也榄,那么我們應(yīng)該這么寫:
System.out.println( new BigDecimal("100.000").stripTrailingZeros().toString());? //輸出為:1E+2
其中巡莹,stripTrailingZeros()函數(shù)就是用于去除末尾多余的0的,但是此時(shí)程序的輸出為: 1E+2是科學(xué)計(jì)數(shù)法甜紫,可能并不是我們想要的降宅。
解決的方法很簡單,如果想要避免輸出科學(xué)計(jì)數(shù)法的字符串囚霸,
我們要用toPlainString()函數(shù)代替toString()如:
System.out.println( new BigDecimal("100.000").stripTrailingZeros().toPlainString());
十五腰根、Arrays.sort()
Java的Arrays類中有一個(gè)sort()方法,該方法是Arrays類的靜態(tài)方法拓型,在需要對(duì)數(shù)組進(jìn)行排序時(shí)额嘿,非常的好用。
public class p5717 {
//從大到小排序
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int[] a = {9, 8, 7, 2, 3, 4, 1, 0, 6, 5};
Arrays.sort(a, 0, 10);? //a:數(shù)組名稱劣挫;0:數(shù)組的第一個(gè)位置岩睁;10:一共排幾個(gè)數(shù)字
for(int i = 0; i < a.length; i ++) {
System.out.print(a[i] + " ");
}
}
}
public class p5717 {
//從小到大排序
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int arr[] = new int[3];
for (int i = 0; i < arr.length; i++) {
System.out.println("請(qǐng)輸入數(shù)字:");
arr[i] = reader.nextInt();
}
Arrays.sort(arr);
for (int j = 0; j < arr.length; j++) {
System.out.print(arr[j] + " ");
}
}
}
十六、System.exit(0)表示的是終止程序揣云;System.exit(1)表示異常終止
十七、java截取字符的方法
s += Integer.parseInt(num.substring(i,i+1));
首先冰啃,num.substring(i,i+1)這是一個(gè)String的截取字符串的方法邓夕,從第i個(gè)開始到i+1個(gè)。截取之后阎毅,轉(zhuǎn)成int類型焚刚。
與s相加,然后賦值給s扇调。
十八矿咕、String.valusOf()方法的使用
//? 由基本數(shù)據(jù)型態(tài)轉(zhuǎn)換成String
String 類別中已經(jīng)提供了將基本數(shù)據(jù)型態(tài)轉(zhuǎn)換成 String 的 static 方法,也就是
String.valueOf() 這個(gè)參數(shù)多載的方法有以下幾種:
(1)String.valueOf(boolean b) : 將 boolean 變量 b 轉(zhuǎn)換成字符串
(2)String.valueOf(char c) : 將 char 變量 c 轉(zhuǎn)換成字符串
(3)String.valueOf(char[] data) : 將 char 數(shù)組 data 轉(zhuǎn)換成字符串
(4)String.valueOf(char[] data, int offset, int count) : 將 char 數(shù)組 data 中 由 data[offset] 開始取 count 個(gè)元素轉(zhuǎn)換成字符串
(5)String.valueOf(double d) : 將 double 變量 d 轉(zhuǎn)換成字符串
(6)String.valueOf(float f) : 將 float 變量 f 轉(zhuǎn)換成字符串
(7)String.valueOf(int i) : 將 int 變量 i 轉(zhuǎn)換成字符串
(8)String.valueOf(long l) : 將 long 變量 l 轉(zhuǎn)換成字符串
(9)String.valueOf(Object obj) : 將 obj 對(duì)象轉(zhuǎn)換成 字符串, 等于 obj.toString()
用法如下:
int i = 10;
String str = String.valueOf(i);
這時(shí)候 str 就會(huì)是 "10"
//由 String 轉(zhuǎn)換成 數(shù)字的基本數(shù)據(jù)型態(tài)
要將 String 轉(zhuǎn)換成基本數(shù)據(jù)型態(tài)轉(zhuǎn) 狼钮,大多需要使用基本數(shù)據(jù)型態(tài)的包裝類別
比如說 String 轉(zhuǎn)換成 byte 碳柱,可以使用 Byte.parseByte(String s) ,這一類的方法如果無法將 s 分析 則會(huì)丟出 NumberFormatException
(1)byte : Byte.parseByte(String s) : 將 s 轉(zhuǎn)換成 byte
(2)Byte.parseByte(String s, int radix) : 以 radix 為基底 將 s 轉(zhuǎn)換為 byte 熬芜,比如說 Byte.parseByte("11", 16) 會(huì)得到 17
(3)double : Double.parseDouble(String s) : 將 s 轉(zhuǎn)換成 double
(4)float : Double.parseFloat(String s) : 將 s 轉(zhuǎn)換成 float
(5)int : Integer.parseInt(String s) : 將 s 轉(zhuǎn)換成 int
(6)long : Long.parseLong(String s)
十九莲镣、charAt()
//java.lang.String.charAt() 方法返回指定索引處的char值。索引范圍是從0到length() - 1涎拉。
//對(duì)于數(shù)組索引瑞侮,序列的第一個(gè)char值是在索引為0的圆,索引1,依此類推
String s ="abc";
System.out.println(s.charAt(1));? //輸出結(jié)果為:b
二十半火、reverse
public class test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
String x = String.valueOf(N);
StringBuilder y = new StringBuilder(x); //使用System.Text.StringBuilder類,可以修改字符串而不創(chuàng)建新的對(duì)象
y.reverse();? //進(jìn)行反轉(zhuǎn)
System.out.println(y);? //輸入123越妈,輸出321
}
}
二十一、字母大小寫反轉(zhuǎn)
//字母大小寫反轉(zhuǎn)
public class p5704 {
public static void main(String[] args) {
String str = "Q";
System.out.println(str.toLowerCase());
String strs = "q";
System.out.println(str.toUpperCase());
}
}
二十二钮糖、順序反轉(zhuǎn)
public class p5705 {
public static void main(String[] args) {
String a = "123.4";
//方法一 : 利用StringBuffer的reverse
String a1 = new StringBuffer(a).reverse().toString();
System.out.println(a1);
//StringBuffer();就是構(gòu)造一個(gè)StringBuffer對(duì)象梅掠。
//sb.reverse()就是用來把stringbuffer里面的字符串翻轉(zhuǎn)。譬如你stringbuffer里面存放了abc,
//sb.reverse()====>cba
//sb.toString()就是返回該stringbuffer的字符串形式藐鹤。
// 方法二 利用String的toCharArray方法先將字符串轉(zhuǎn)化為char類型的數(shù)組瓤檐,然后將各個(gè)字符進(jìn)行重新拼接
char [] chars = a.toCharArray();
String a2="";
for (int i=chars.length-1;i>=0;i--) {
a2 +=chars[i];
}
System.out.println(a2);
//方法三? 利用String的CharAt方法取出字符串中的各個(gè)字符
String a3 = "";
for (int i=0;i<a.length();i++){
a3=a.charAt(i) + a3;
}
System.out.println(a3);
//查找某字符串特定索引位置的字符時(shí)什么,比如:
//String a="abcde";
//char c=a.charAt(1);
//則c=‘b’
//Java程序中strObj.charAt(index)方法娱节,返回指定索引位置處的字符挠蛉。CharAt()方法返回一個(gè)字符值,該字符位于指定索引位置肄满。
//字符串中的第一個(gè)字符的索引為 0谴古,第二個(gè)的索引為 1,等等稠歉。超出有效范圍的索引值返回空字符串掰担。
}
}
二十三、取絕對(duì)值
public class p1425 {
public static void main(String[] args) {
int b = 50,d = 10;
int f = d - b;
int value = Math.abs(f);
System.out.println(value);
}
}
二十四怒炸、保留小數(shù)點(diǎn)后幾位
public class p5706 {
public static void main(String[] args) {
double t = 500.0, n = 3;
double a = t / n;
String s = String.format("%.3f", a);? //f前是幾带饱,就是保留幾位數(shù)字? a為該數(shù)字
System.out.println("每個(gè)同學(xué)可以獲得的飲料數(shù):" + s);
System.out.println(String.format("%.1f", e));
}
}
// Math.sqrt()? 計(jì)算平方根
//Math.cbrt()? 計(jì)算立方根
//Math.hypot(x,y)? 計(jì)算(x的平方 + y的平方)的平方根
//Math.pow(a,b)? 計(jì)算a的b次方
//Math.abs(a)? 求絕對(duì)值
//Math.ceil()? 向上取整
//Math.floor()? 向下取整
//Math.round()? 四舍五入
DecimalFormat df = new DecimalFormat("#0.0");? //. 后邊幾個(gè)零,就是幾位小數(shù)
System.out.print(df.format(sum1/flag1)+" "+df.format((sum-sum1)/(n-flag1)));
二十五阅羹、Java中BigInteger方法總結(jié)
BigInteger不是基本數(shù)據(jù)類型之一勺疼,它其實(shí)更像String,是Java里的一個(gè)類,然而它的初始化方式卻沒有String那么方便可以直接賦值捏鱼,而是跟其他自定義的類一樣执庐,要調(diào)用它的構(gòu)造器進(jìn)行初始化。這個(gè)類的取值范圍原則上是沒有上限的导梆,取決于你的計(jì)算機(jī)的內(nèi)存
二十六轨淌、Java中字符串中子串的查找共有四種方法(indexof())
indexOf 方法返回一個(gè)整數(shù)值,指出 String 對(duì)象內(nèi)子字符串的開始位置看尼。如果沒有找到子字符串递鹉,則返回-1。
如果startindex 是負(fù)數(shù)藏斩,則 startindex 被當(dāng)作零梳虽。如果它比最大的字符位置索引還大,則它被當(dāng)作最大的可能索引灾茁。
Java中字符串中子串的查找共有四種方法窜觉,如下:
1谷炸、int indexOf(String str) :返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。
2禀挫、int indexOf(String str, int startIndex):從指定的索引處開始旬陡,返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。
3语婴、int lastIndexOf(String str) :返回在此字符串中最右邊出現(xiàn)的指定子字符串的索引描孟。
4、int lastIndexOf(String str, int startIndex) :從指定的索引處開始向后搜索砰左,返回在此字符串中最后一次出現(xiàn)的指定子字符串的索引匿醒。
public class Person {
? ? ? ? publicstatic void main(String[] args) {
? ? ? ? ? ? ? ? Stringstring="dccgcfacggx";//返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。System.out.println(string.indexOf("c"));
? ? ? ? ? ? ? ? System.out.println(string.lastIndexOf("g",8));
? ? ? ? ? ? ? ? //結(jié)果:8 }}
//結(jié)果:1
//如果沒有找到子字符串缠导,則返回-1System.out.println(string.indexOf("z"));
//結(jié)果:-1
//從指定的索引處開始廉羔,返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。System.out.println(string.indexOf("c",3));
//結(jié)果:4
//返回在此字符串中最右邊出現(xiàn)的指定子字符串的索引僻造。System.out.println(string.lastIndexOf("g"));
//結(jié)果:9
//從指定的索引處開始向后搜索憋他,返回在此字符串中最后一次出現(xiàn)的指定子字符串的索引。
Scanner rd = new Scanner(System.in);
String s = rd.next();
for (int i=0;i<s.length();i++){
System.out.println(s.charAt(i));
}符
比如:
3<1?A:b
如果3<1 是的話就是A 不是的話就是b
System.out.println(3>2?"A":"B");//輸出A
七竹挡、字符串去空格
//去除所有
String str = rd.next();
String str2 = str.replaceAll(" ", "");
System.out.println(str2);
//去除首尾
String str = "? 123? ";
System.out.println(str.trim());
......
八、equals()立膛、==揪罕、equalsIgnoreCase()
//equals() 會(huì)判斷大小寫區(qū)別,equalsIgnoreCase() 不會(huì)判斷大小寫區(qū)別
基本類型:比較的就是值是否相同
引用類型:比較的就是地址值是否相同equals 的作用:
九宝泵、next()與nextLine()的區(qū)別
//如果寫成scanner.next()就會(huì)錯(cuò)誤好啰,因?yàn)橹挥衝extLine()可以輸入像空格、回車一樣的字符
十鲁猩、String和StringBuilder的區(qū)別
//String的對(duì)象不可變
//StringBuilder中字符可變
十一、toCharArray()方法
//是一個(gè)將字符串轉(zhuǎn)化為字符數(shù)組的方法罢坝。
String a = new String("Mustang");
char []b = a.toCharArray();
System.out.println(b[2]); //最終輸出的結(jié)果為s;
十二廓握、substring()方法
//返回字符串的子串
//substring(a)和substring(a,b)
public static void main(String[] args) {
String num = "0123456789";
String ab1 = num.substring(2, 6);
String ab2 = num.substring(1, 8);
String a = num.substring(3);
System.out.println("ab1的值:" + ab1);
System.out.println("ab2的值:" + ab2);
System.out.println("a的值:" + a);
}
}
輸出結(jié)果:
ab1的值:2345
ab2的值:1234567
a的值:3456789
總結(jié):
1.java中String元素下標(biāo)從0開始嘁酿,substring(a)是從第a個(gè)字符開始截取隙券,包含第a個(gè)字符∧炙荆可以看成數(shù)學(xué)中的[ )娱仔,表示左閉右開區(qū)間
2.substring(a, b)表示截取下標(biāo)從a開始到b結(jié)束的字符,包含第a個(gè)字符但是不包含第b個(gè)字符游桩,可以看成[a,b)牲迫。
十三耐朴、保留有效數(shù)字
System.out.printf("%6.4f\n",BMI);
// .前為一共幾位數(shù)字;.后為小數(shù)點(diǎn)后幾位盹憎;BMI為該數(shù)字
十四筛峭、BigDecimal
BigDecimal是處理高精度的浮點(diǎn)數(shù)運(yùn)算的常用的一個(gè)類
當(dāng)需要將BigDecimal中保存的浮點(diǎn)數(shù)值打印出來,特別是在頁面上顯示的時(shí)候陪每,就有可能遇到預(yù)想之外的科學(xué)技術(shù)法表示的問題影晓。
一般直接使用 BigDecimal.toString()方法即可以完成浮點(diǎn)數(shù)的打印。如:
System.out.println( new BigDecimal("10000000000").toString());
但是檩禾,toString()方法輸出的字符串并不能保證不是科學(xué)計(jì)數(shù)法挂签。
不過在日常的使用中,用toString()方法輸出的就是普通的數(shù)字字符串而非科學(xué)計(jì)數(shù)法盼产。直接這么寫:
System.out.println( new BigDecimal("100.000").toString());
程序的輸出即為:? 100.000
如果我們希望去除末尾多余的0饵婆,那么我們應(yīng)該這么寫:
System.out.println( new BigDecimal("100.000").stripTrailingZeros().toString());? //輸出為:1E+2
其中,stripTrailingZeros()函數(shù)就是用于去除末尾多余的0的辆飘,但是此時(shí)程序的輸出為: 1E+2是科學(xué)計(jì)數(shù)法啦辐,可能并不是我們想要的。
解決的方法很簡單蜈项,如果想要避免輸出科學(xué)計(jì)數(shù)法的字符串芹关,
我們要用toPlainString()函數(shù)代替toString()如:
System.out.println( new BigDecimal("100.000").stripTrailingZeros().toPlainString());
十五、Arrays.sort()
Java的Arrays類中有一個(gè)sort()方法紧卒,該方法是Arrays類的靜態(tài)方法侥衬,在需要對(duì)數(shù)組進(jìn)行排序時(shí),非常的好用跑芳。
public class p5717 {
//從大到小排序
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int[] a = {9, 8, 7, 2, 3, 4, 1, 0, 6, 5};
Arrays.sort(a, 0, 10);? //a:數(shù)組名稱轴总;0:數(shù)組的第一個(gè)位置;10:一共排幾個(gè)數(shù)字
for(int i = 0; i < a.length; i ++) {
System.out.print(a[i] + " ");
}
}
}
public class p5717 {
//從小到大排序
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int arr[] = new int[3];
for (int i = 0; i < arr.length; i++) {
System.out.println("請(qǐng)輸入數(shù)字:");
arr[i] = reader.nextInt();
}
Arrays.sort(arr);
for (int j = 0; j < arr.length; j++) {
System.out.print(arr[j] + " ");
}
}
}
十六博个、System.exit(0)表示的是終止程序怀樟;System.exit(1)表示異常終止
十七、java截取字符的方法
s += Integer.parseInt(num.substring(i,i+1));
首先盆佣,num.substring(i,i+1)這是一個(gè)String的截取字符串的方法往堡,從第i個(gè)開始到i+1個(gè)。截取之后共耍,轉(zhuǎn)成int類型虑灰。
與s相加,然后賦值給s痹兜。
十八穆咐、String.valusOf()方法的使用
//? 由基本數(shù)據(jù)型態(tài)轉(zhuǎn)換成String
String 類別中已經(jīng)提供了將基本數(shù)據(jù)型態(tài)轉(zhuǎn)換成 String 的 static 方法,也就是
String.valueOf() 這個(gè)參數(shù)多載的方法有以下幾種:
(1)String.valueOf(boolean b) : 將 boolean 變量 b 轉(zhuǎn)換成字符串
(2)String.valueOf(char c) : 將 char 變量 c 轉(zhuǎn)換成字符串
(3)String.valueOf(char[] data) : 將 char 數(shù)組 data 轉(zhuǎn)換成字符串
(4)String.valueOf(char[] data, int offset, int count) : 將 char 數(shù)組 data 中 由 data[offset] 開始取 count 個(gè)元素轉(zhuǎn)換成字符串
(5)String.valueOf(double d) : 將 double 變量 d 轉(zhuǎn)換成字符串
(6)String.valueOf(float f) : 將 float 變量 f 轉(zhuǎn)換成字符串
(7)String.valueOf(int i) : 將 int 變量 i 轉(zhuǎn)換成字符串
(8)String.valueOf(long l) : 將 long 變量 l 轉(zhuǎn)換成字符串
(9)String.valueOf(Object obj) : 將 obj 對(duì)象轉(zhuǎn)換成 字符串, 等于 obj.toString()
用法如下:
int i = 10;
String str = String.valueOf(i);
這時(shí)候 str 就會(huì)是 "10"
//由 String 轉(zhuǎn)換成 數(shù)字的基本數(shù)據(jù)型態(tài)
要將 String 轉(zhuǎn)換成基本數(shù)據(jù)型態(tài)轉(zhuǎn) ,大多需要使用基本數(shù)據(jù)型態(tài)的包裝類別
比如說 String 轉(zhuǎn)換成 byte 对湃,可以使用 Byte.parseByte(String s) 崖叫,這一類的方法如果無法將 s 分析 則會(huì)丟出 NumberFormatException
(1)byte : Byte.parseByte(String s) : 將 s 轉(zhuǎn)換成 byte
(2)Byte.parseByte(String s, int radix) : 以 radix 為基底 將 s 轉(zhuǎn)換為 byte ,比如說 Byte.parseByte("11", 16) 會(huì)得到 17
(3)double : Double.parseDouble(String s) : 將 s 轉(zhuǎn)換成 double
(4)float : Double.parseFloat(String s) : 將 s 轉(zhuǎn)換成 float
(5)int : Integer.parseInt(String s) : 將 s 轉(zhuǎn)換成 int
(6)long : Long.parseLong(String s)
十九熟尉、charAt()
//java.lang.String.charAt() 方法返回指定索引處的char值归露。索引范圍是從0到length() - 1。
//對(duì)于數(shù)組索引斤儿,序列的第一個(gè)char值是在索引為0剧包,索引1,依此類推
String s ="abc";
System.out.println(s.charAt(1));? //輸出結(jié)果為:b
二十往果、reverse
public class test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
String x = String.valueOf(N);
StringBuilder y = new StringBuilder(x); //使用System.Text.StringBuilder類,可以修改字符串而不創(chuàng)建新的對(duì)象
y.reverse();? //進(jìn)行反轉(zhuǎn)
System.out.println(y);? //輸入123疆液,輸出321
}
}
二十一、字母大小寫反轉(zhuǎn)
//字母大小寫反轉(zhuǎn)
public class p5704 {
public static void main(String[] args) {
String str = "Q";
System.out.println(str.toLowerCase());
String strs = "q";
System.out.println(str.toUpperCase());
}
}
二十二陕贮、順序反轉(zhuǎn)
public class p5705 {
public static void main(String[] args) {
String a = "123.4";
//方法一 : 利用StringBuffer的reverse
String a1 = new StringBuffer(a).reverse().toString();
System.out.println(a1);
//StringBuffer();就是構(gòu)造一個(gè)StringBuffer對(duì)象堕油。
//sb.reverse()就是用來把stringbuffer里面的字符串翻轉(zhuǎn)。譬如你stringbuffer里面存放了abc,
//sb.reverse()====>cba
//sb.toString()就是返回該stringbuffer的字符串形式肮之。
// 方法二 利用String的toCharArray方法先將字符串轉(zhuǎn)化為char類型的數(shù)組掉缺,然后將各個(gè)字符進(jìn)行重新拼接
char [] chars = a.toCharArray();
String a2="";
for (int i=chars.length-1;i>=0;i--) {
a2 +=chars[i];
}
System.out.println(a2);
//方法三? 利用String的CharAt方法取出字符串中的各個(gè)字符
String a3 = "";
for (int i=0;i<a.length();i++){
a3=a.charAt(i) + a3;
}
System.out.println(a3);
//查找某字符串特定索引位置的字符時(shí)什么,比如:
//String a="abcde";
//char c=a.charAt(1);
//則c=‘b’
//Java程序中strObj.charAt(index)方法戈擒,返回指定索引位置處的字符眶明。CharAt()方法返回一個(gè)字符值,該字符位于指定索引位置筐高。
//字符串中的第一個(gè)字符的索引為 0搜囱,第二個(gè)的索引為 1,等等柑土。超出有效范圍的索引值返回空字符串蜀肘。
}
}
二十三、取絕對(duì)值
public class p1425 {
public static void main(String[] args) {
int b = 50,d = 10;
int f = d - b;
int value = Math.abs(f);
System.out.println(value);
}
}
二十四稽屏、保留小數(shù)點(diǎn)后幾位
public class p5706 {
public static void main(String[] args) {
double t = 500.0, n = 3;
double a = t / n;
String s = String.format("%.3f", a);? //f前是幾扮宠,就是保留幾位數(shù)字? a為該數(shù)字
System.out.println("每個(gè)同學(xué)可以獲得的飲料數(shù):" + s);
System.out.println(String.format("%.1f", e));
}
}
// Math.sqrt()? 計(jì)算平方根
//Math.cbrt()? 計(jì)算立方根
//Math.hypot(x,y)? 計(jì)算(x的平方 + y的平方)的平方根
//Math.pow(a,b)? 計(jì)算a的b次方
//Math.abs(a)? 求絕對(duì)值
//Math.ceil()? 向上取整
//Math.floor()? 向下取整
//Math.round()? 四舍五入
DecimalFormat df = new DecimalFormat("#0.0");? //. 后邊幾個(gè)零,就是幾位小數(shù)
System.out.print(df.format(sum1/flag1)+" "+df.format((sum-sum1)/(n-flag1)));
二十五狐榔、Java中BigInteger方法總結(jié)
BigInteger不是基本數(shù)據(jù)類型之一坛增,它其實(shí)更像String,是Java里的一個(gè)類,然而它的初始化方式卻沒有String那么方便可以直接賦值荒叼,而是跟其他自定義的類一樣轿偎,要調(diào)用它的構(gòu)造器進(jìn)行初始化典鸡。這個(gè)類的取值范圍原則上是沒有上限的被廓,取決于你的計(jì)算機(jī)的內(nèi)存
二十六、Java中字符串中子串的查找共有四種方法(indexof())
indexOf 方法返回一個(gè)整數(shù)值萝玷,指出 String 對(duì)象內(nèi)子字符串的開始位置嫁乘。如果沒有找到子字符串昆婿,則返回-1。
如果startindex 是負(fù)數(shù)蜓斧,則 startindex 被當(dāng)作零仓蛆。如果它比最大的字符位置索引還大,則它被當(dāng)作最大的可能索引挎春。
Java中字符串中子串的查找共有四種方法看疙,如下:
1、int indexOf(String str) :返回第一次出現(xiàn)的指定子字符串在此字符串中的索引直奋。
2能庆、int indexOf(String str, int startIndex):從指定的索引處開始,返回第一次出現(xiàn)的指定子字符串在此字符串中的索引脚线。
3搁胆、int lastIndexOf(String str) :返回在此字符串中最右邊出現(xiàn)的指定子字符串的索引。
4邮绿、int lastIndexOf(String str, int startIndex) :從指定的索引處開始向后搜索渠旁,返回在此字符串中最后一次出現(xiàn)的指定子字符串的索引。
public class Person {
? ? ? ? publicstatic void main(String[] args) {
? ? ? ? ? ? ? ? Stringstring="dccgcfacggx";//返回第一次出現(xiàn)的指定子字符串在此字符串中的索引船逮。System.out.println(string.indexOf("c"));
? ? ? ? ? ? ? ? System.out.println(string.lastIndexOf("g",8));
? ? ? ? ? ? ? ? //結(jié)果:8 }}
//結(jié)果:1
//如果沒有找到子字符串顾腊,則返回-1System.out.println(string.indexOf("z"));
//結(jié)果:-1
//從指定的索引處開始,返回第一次出現(xiàn)的指定子字符串在此字符串中的索引傻唾。System.out.println(string.indexOf("c",3));
//結(jié)果:4
//返回在此字符串中最右邊出現(xiàn)的指定子字符串的索引投慈。System.out.println(string.lastIndexOf("g"));
//結(jié)果:9
//從指定的索引處開始向后搜索,返回在此字符串中最后一次出現(xiàn)的指定子字符串的索引冠骄。
Scanner rd = new Scanner(System.in);
String s = rd.next();
for (int i=0;i<s.length();i++){
System.out.println(s.charAt(i));
}