一.size(),length和length()的区别
1.length不是方法,是属性,数组的属性;
public static void main(String[] args) {
int[] intArray = {1,2,3,4,5,6};
System.out.println("这个数组的长度为:" + intArray.length);
}
2.length()是字符串String的一个方法;
public static void main(String[] args) {
String str = "HelloWorld";
System.out.println("这个字符串的长度为:" + str.length());
}
3.size()是List集合的一个方法;
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
System.out.println("这个list的长度为:" + list.size());//输出4
}
二.charAt()方法
public class Test {
public static void main(String args[]) {
String s = "www.runoob.com";
char result = s.charAt(6);
System.out.println(result);//输出n
}
}
返回值
---返回指定索引处的字符。
三.数据类型转换
1.int转成String
1)String s = String.valueOf(i);
2)String s = Integer.toString(i);
3)String s = "" + i;
public class String1{
public static void main(String args[]){
int i = 25;
String s1 = String.valueOf(i);
String s2 = Integer.toString(i);
String s3 = ""+i;
System.out.println(s1+"\n"+s2+"\n"+s3+"\n");
}
}
2.String转成数组
public class String1{
public static void main(String args[]){
String str = "sfoaefd";
char[] arr = str.toCharArray();
}
}
四.char[] arr与char arr[]的区别
在 Java 中,char[] arr
和 char arr[]
都表示一个字符数组,但是它们的写法略有不同。
1)char[] arr
是推荐的写法,将数组类型标识符 []
放在变量名后面,这是 Java 定义数组类型的标准方式。
2)char arr[]
是另一种合法的写法,它将数组类型标识符 []
放在变量名前面。这种写法在 C/C++ 中是允许的,但在 Java 中是不太常见的写法。
在 Java 中建议使用 char[] arr
的语法来声明字符数组。
两种写法都可以用来声明字符数组,但在 Java 中,char[] arr
更常见,也更推荐使用。
五.Java Character toLowerCase()用法及代码示例
Character类的toLowerCase() 方法将字符串转换为小写
public class Test {
public static void main(String args[]) {
String Str = new String("HHOFOAWio");
System.out.println( Str.toLowerCase());
//或者
char[] nmu = Str.toCharArray();
for(int i = 0; i<nmu.length;i++){
nmu[i] = Character.toLowerCase(nmu[i]);
}
System.out.println(nmu);
}
}
//输出
hhofoawio
hhofoawio
六.Math类的方法
1.ceil向上取整
2.floor向下取整
3.round四舍五入
public class MathTest {
public static void main(String[] args) {
double x = 1.2;
double y = 2.5;
double z = 3.7;
System.out.println("向上取整:" + Math.ceil(x)+" "+Math.ceil(y)+" "+Math.ceil(z));
System.out.println("向下取整:" + Math.floor(x)+" "+Math.floor(y)+" "+Math.floor(z));
System.out.println("四舍五入:" + Math.round(x)+" "+Math.round(y)+" "+Math.round(z));
}
}
//输出
向上取整:2.0 3.0 4.0
向下取整:1.0 2.0 3.0
四舍五入:1 3 4
4.round四舍五入保留小数点后两位
public class roundTest {
public static void main(String[] args){
double a = 2.5245;
System.out.println(Math.round(a*100)*0.01);
}
}
//输出
2.52
**遇到的蓝桥杯问题(成绩分析编号【497】)
import java.util.Arrays;
import java.util.Scanner;
public class Test1 {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
//在此输入您的代码...
//考试人数
int n = scan.nextInt();
//平均分
double num = 0;
//数组存放得分
int[] name = new int[n];
for(int i = 0; i< n ;i++){
name[i] = scan.nextInt();
num = (num + name[i]);
}
Arrays.sort(name);
System.out.println(name[name.length-1]);
System.out.println(name[0]);
System.out.println(Math.round(num*100/n)*0.01);
//存在错误
/**
* 输入数据
10
43
40
79
59
37
41
31
35
39
44
输出数据
79
31
44.800000000000004
**/
//正确的四舍五入保留两位小数
System.out.println(String.format("%.2f",num/n));//这种方法只适用于转为字符串输出
}
}
不太清楚为什么使用Math.round()方法会出现这种错误。
七.java切片
蓝桥杯编号(348)-回文日期
1.String字符串-
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
String str = "Hello-World";
System.out.println(str.substring(6));//World
//str.substring(6,11)左闭右开
System.out.println(str.substring(6,11));//World
String[] strArr = str.split("-");//指定分割字符
System.out.println(Arrays.toString(strArr));//[Hello, World]
//replace(char searchChar, char newChar)
//方法通过用 newChar 字符替换字符串中出现的所有 searchChar 字符,并返回替换后的新字符串
System.out.println(str.replace("-"," "));//Hello World
}
}
2.数组
import java.util.*;
public class Main {
public static void main(String[] args) {
String[] str = new String[]{"a","b","c","d","e"};
//左闭右开
str = Arrays.copyOfRange(str,1,4);
System.out.println(Arrays.toString(str));//[b, c, d]
}
}