字符, 字节与字符串
5.1 字符与字符串
字符串内部包含一个字符数组,String 可以和 char[] 相互转换.
1.字符数组变为字符串:
public static void main(String[] args) {
char[] val = {'a','b','c','d','e'};
String str = new String(val);
System.out.println(str);
}
2.指定字符数组变为字符串:
public static void main(String[] args) {
char[] val = {'a','b','c','d','e'};
String str = new String(val,1,3);//第一个参数是开始变得字符下标 第二个参数是要变的字符个数
System.out.println(str);
}
3.获取指定位置的字符:
public static void main(String[] args) {
String str = "hello" ;
System.out.println(str.charAt(0)); // 下标从 0 开始
}
1
2
3
4
public static void main(String[] args) {
String str = "hello" ;
System.out.println(str.charAt(10));
}
4.将字符串变为字符数组:
public static void main(String[] args) {
String str = "helloworld" ;
char[] chars =str.toCharArray();//把str指向的字符串对象变为字符数组
System.out.println(Arrays.toString(chars));
}
代码示例: 给定字符串一个字符串, 判断其是否全部由数字所组成.
思路: 将字符串变为字符数组而后判断每一位字符是否是" 0 “~”‘9’"之间的内容,如果是则为数字.
public static boolean isNumber(String str) {
char[] array = str.toCharArray();
for (int i = 0; i < array.length; i++) {
if (array[i] < '0' || array[i] > '9') {
return false;
}
}
return true;
}
public static void main(String[] args) {
String str = "12a34567";
System.out.println(isNumber(str));
}
5.2 字节与字符串
字节常用于数据传输以及编码转换的处理之中,String 也能方便的和 byte[] 相互转换.
1.将字节数组变为字符串:
public static void main(String[] args) {
byte[] bytes = {97,98,99,100};
String str = new String(bytes);
System.out.println(str);
}