总长度,左对齐,补0,千位分隔符,小数点位数,本地化表达package digit;import java.util.Locale;public class TestNumber {public static void main(String[] args) {int year = 2020;//总长度,左对齐,补0,千位分隔符,小数点位数,本地化表达//直接打印数字System.out.format("%d%n",year);//总长度是8,默认右对齐System.out.format("%8d%n",year);//总长度是8,左对齐System.out.format("%-8d%n",year);//总长度是8,不够补0System.out.format("%08d%n",year);//千位分隔符System.out.format("%,8d%n",year*10000);//小数点位数System.out.format("%.2f%n",Math.PI);//不同国家的千位分隔符System.out.format(Locale.FRANCE,"%,.2f%n",Math.PI*10000);System.out.format(Locale.US,"%,.2f%n",Math.PI*10000);System.out.format(Locale.UK,"%,.2f%n",Math.PI*10000);}}
9.5 字符char
保存一个字符的时候使用charchar对应的封装类是CharacterCharacter常见 *** public class TestChar {public static void main(String[] args) {System.out.println(Character.isLetter('a'));//判断是否为字母System.out.println(Character.isDigit('a')); //判断是否为数字System.out.println(Character.isWhitespace(' ')); //是否是空白System.out.println(Character.isUpperCase('a')); //是否是大写System.out.println(Character.isLowerCase('a')); //是否是小写System.out.println(Character.toUpperCase('a')); //转换为大写System.out.println(Character.toLowerCase('A')); //转换为小写String a = 'a'; //不能够直接把一个字符转换成字符串String a2 = Character.toString('a'); //转换为字符串}}
常见转义public class TestChar {public static void main(String[] args) {System.out.println("使用空格无法达到对齐的效果");System.out.println("abc def");System.out.println("ab def");System.out.println("a def");System.out.println("使用\\t制表符可以达到对齐的效果");System.out.println("abc\tdef");System.out.println("ab\tdef");System.out.println("a\tdef");System.out.println("一个\\t制表符长度是8");System.out.println("换行符 abc\ndef");System.out.println("单引号abc\'def");System.out.println("双引号abc\"def");System.out.println("反斜杠abc\\def");}}
练习-Character通过Scanner从控制台读取字符串,然后把字符串转换为字符数组 。
转换为字符数组后,筛选出控制台读取到的字符串中的大写字母和数字,并打印出来 。
public class TestNumber {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String str = sc.next();char []cs = str.toCharArray();System.out.println(String.valueOf(cs));System.out.println(Arrays.toString(cs));String str2 = "";for(int i = 0;i < str.length();i++){if(Character.isDigit(cs[i]) || Character.isUpperCase(cs[i]))str2 += cs[i];}System.out.println(str2);}}

文章插图
9.6 字符串*
创建字符串字符串即字符的组合,在Java中,字符串是一个类,所以我们见到的字符串都是对象 常见创建字符串手段:
每当有一个字面值出现的时候,虚拟机就会创建一个字符串 。调用String的构造 *** 创建一个字符串对象 。通过+加号进行字符串拼接也会创建新的字符串对象 。public class TestString {public static void main(String[] args) {String garen ="盖伦"; //字面值,虚拟机碰到字面值就会创建一个字符串对象String teemo = new String("提莫"); //创建了两个字符串对象char[] cs = new char[]{'崔','斯','特'};String hero = new String(cs);//通过字符数组创建一个字符串对象String hero3 = garen + teemo;//通过+加号进行字符串拼接}}
String 被修饰为final,所以是不能被继承的/*这里会报错,因为String不能被继承*/static class MyString extends String{ }
immutable - 不可改变的比如创建了一个字符串对象 String garen ="盖伦";
不可改变的具体含义是指:
不能增加长度不能减少长度不能插入字符不能删除字符不能修改字符一旦创建好这个字符串,里面的内容 永远 不能改变,String 的表现就像是一个常量 。
字符串格式化//%s表示字符串,%d表示数字,%n表示换行String sentenceFormat ="%s 在进行了连续 %d 次击杀后,获得了 %s 的称号%n";String sentence2 = String.format(sentenceFormat, name,kill,title);练习1-随机字符串创建一个长度是5的随机字符串,随机字符有可能是数字,大写字母或者小写字母 。
public class TestNumber {public char get_char(){/*0-9 corresponds to Ascii 48-57*A-Z 65-90*a-z 97-122* */Random random = new Random();//随机生成122-48范围类的ascii码int num;switch (random.nextInt(3)){//获取数字asciicase 0:num = random.nextInt(58-48) + 48;break;//获取大写字母case 1:num = random.nextInt(91-65) + 65;break;case 2:num = random.nextInt(123 - 97) + 97;break;default:num = 48;}char c = (char)num;return c;}public String get_String(int length){String str = "";for(int i = 0;i < length;i++){str += get_char();}return str;}public static void main(String[] args) {TestNumber t = new TestNumber();String str = t.get_String(5);System.out.println(str);}}
推荐阅读
- 錾刻 錾
- 瓦肆是什么意思 瓦斯是什么
- Columbia是什么牌子的刀 columbia是什么牌子
- 豆豉酱,豆瓣
- 天然气锅炉显示e9是什么意思 天然气显示e9是什么意思
- cover什么意思,cover
- 运营商锁
- 畜的动物是什么 牲畜是指哪些动物?
- 东京奥运会首金是什么 东京奥运会首金是哪个国家拿走了??
- 淀粉是什么原料做成的 淀粉是什么做的?