Test3.java

  1 package com;
  2 
  3 import java.text.DecimalFormat;
  4 
  5 public class Test3 {
  6 
  7     public static void main(String[] args) {
  8         System.out.println("This a java program!");
  9         args[0] = "1";
 10         args[1] = "2";
 11         args[2] = "3";
 12         System.out.println("arg is" + args[0] + " " + args[1] + " " + args[2]);
 13 
 14         // NO.1 2-1 什么是java中的字符串
 15         // 定义字符串
 16         String hobby = "爱慕可";
 17         String url = "dd";
 18 
 19         // 输出字符串
 20         System.out.println("hobby:" + hobby);
 21         System.out.println("url:" + url);
 22 
 23         // NO.2 2-2 java中字符串的不变性
 24         String s1 = "imooc";
 25         String s2 = "imooc";
 26 
 27         // 定义字符串s3,保存“I love”和s1拼接后的内容
 28         String s3 = "I love" + s1;
 29 
 30         // 比较字符串s1和s2
 31         // imooc为常量字符串,多次出现时会被编译器优化,只创建一个对象
 32         System.out.println("s1和s2内存地址相同吗?" + (s1 == s2));
 33         System.out.println("s1和s2内容相同吗?" + (s1.equals(s2)));
 34         // 比较字符串s1和s3
 35         System.out.println("s1和s3内存地址相同吗?" + (s1 == s3));
 36         System.out.println("s1和s3内容相同吗?" + (s1.equals(s3)));
 37         String s4 = "I love" + s1;
 38         // 比较字符串s4和s3
 39         // s1是变量,s4在运行时才知道具体值,所以s3和s4是不同的对象
 40         System.out.println("s3和s4内存地址相同吗?" + (s4 == s3));
 41         System.out.println("s3和s4内容相同吗?" + (s4.equals(s3)));
 42 
 43         // NO.3 2-3 java中String类的常用方法I
 44         // Java文件名
 45         String fileName = "HelloWorld.java";
 46         // 邮箱
 47         String email = "laurenyang@imooc.com";
 48 
 49         // 判断.java文件名是否正确:合法的文件名应该以.java结尾
 50         /*
 51          * 参考步骤: 1、获取文件名中最后一次出现"."号的位置 2、根据"."号的位置,获取文件的后缀 3、判断"."号位置及文件后缀名
 52          */
 53         // 获取文件名中最后一次出现"."号的位置
 54         int index = fileName.lastIndexOf(".");
 55         System.out.println(index);
 56 
 57         // 获取文件的后缀
 58         String prefix = fileName.substring(index + 1, fileName.length());
 59         System.out.println(prefix);
 60         // 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"
 61         if (prefix.equals("java")) {
 62 
 63             System.out.println("Java文件名正确");
 64         } else {
 65             System.out.println(index);
 66 
 67             System.out.println(prefix);
 68             System.out.println("Java文件名无效");
 69         }
 70 
 71         // 判断邮箱格式是否正确:合法的邮箱名中至少要包含"@", 并且"@"是在"."之前
 72         /*
 73          * 参考步骤: 1、获取文件名中"@"符号的位置 2、获取邮箱中"."号的位置 3、判断必须包含"@"符号,且"@"必须在"."之前
 74          */
 75         // 获取邮箱中"@"符号的位置
 76         int index2 = email.indexOf("@");
 77 
 78         // 获取邮箱中"."号的位置
 79         int index3 = email.indexOf('.');
 80 
 81         // 判断必须包含"@"符号,且"@"必须在"."之前
 82         if (index2 != -1 && index3 > index2) {
 83             System.out.println("邮箱格式正确");
 84         } else {
 85             System.out.println("邮箱格式无效");
 86         }
 87 
 88         // NO.4 2-5 认识java中的StringBuilder类
 89         // 创建一个StringBuilder对象,用来存储字符串
 90         StringBuilder hobby1 = new StringBuilder("爱慕课");
 91 
 92         System.out.println(hobby1);
 93 
 94         // NO.5 2-6 java中的StringBuilder类的常用方法
 95         // 创建一个空的StringBuilder对象
 96         StringBuilder str = new StringBuilder();
 97         // 追加字符串
 98         str.append("jaewkjldfxmopzdm");
 99         // 从后往前每隔三位插入逗号
100         for (int i = str.length() - 3; i > 0; i = i - 3) {
101             str.insert(i, ',');
102         }
103         // 将StringBuilder对象转换为String对象并输出
104         System.out.println(str);
105         System.out.println(str.toString());
106 
107         // NO.6 3-1 java中的包装类
108         // 定义int类型变量,值为86
109         int score1 = 86;
110 
111         // 创建Integer包装类对象,表示变量score1的值
112         Integer score2 = new Integer(score1);
113 
114         // 将Integer包装类转换为double类型
115         double score3 = score2.doubleValue();
116 
117         // 将Integer包装类转换为float类型
118         float score4 = score2.floatValue();
119 
120         // 将Integer包装类转换为int类型
121         int score5 = score2.intValue();
122 
123         System.out.println("Integer包装类:" + score2);
124         System.out.println("double类型:" + score3);
125         System.out.println("float类型:" + score4);
126         System.out.println("int类型:" + score5);
127 
128         // NO.7 3-2 java中基本类型和包装类之间的转换
129         // 定义double类型变量
130         double a = 91.5;
131 
132         // 手动装箱
133         Double b = new Double(a);
134 
135         // 自动装箱
136         Double c = a;
137 
138         System.out.println("装箱后的结果为:" + b + "和" + c);
139 
140         // 定义一个Double包装类对象,值为8
141         Double d = new Double(87.0);
142 
143         // 手动拆箱
144         double e = d.doubleValue();
145 
146         // 自动拆箱
147         double f = d;
148 
149         System.out.println("拆箱后的结果为:" + e + "和" + f);
150 
151         // NO.8 3-4 java中基本类型和字符串之间的转换
152         double m = 78.5;
153         // 将基本类型转换为字符串
154         String str1 = Double.toString(m);
155 
156         System.out.println("m 转换为String型后与整数20的求和结果为: " + (str1 + 20));
157 
158         String str2 = "180.256";
159         // 将字符串转换为基本类型
160         Double a1 = Double.valueOf(str2);
161 
162         DecimalFormat df = new DecimalFormat(".00");
163         String a2 = df.format(a1);
164         System.out.println(a1);
165         System.out.println(a2);
166         System.out.println("str 转换为double型后与整数20的求和结果为: " + (a1 + 20));
167     }
168 }

 

posted @ 2018-08-14 15:46  xinyu_xinqing  阅读(161)  评论(0编辑  收藏  举报