• Java探索之旅(2)——GUI输入输出与代码的规范性


    1.知识点概叙

        ① 定名常量:关键字final,类似C++ const定义,一般用大写:final double PI=3.1415926

        ② 5/2=2;5.0/2=2.5;//通常意义的除法,至少一个操作数为浮点数。

        ③ 当且仅当被除数为负时,余数才为负:-7%3=-1,-26%8=-2;20%-13=7

        ④ 浮点数一般近似存储,整形才是精确的存储。整形一般默认是int,浮点浮点数一般默认是double。赋值或者计算时,应用L或F显示标注如:System.out.print(3.0F/10.23F);

        ⑤ 缩窄类型数值类型转换显式说明,拓宽不需要。如intNumber=charNumber;byteNumber=(byte)intNumber

        ⑥Java API中的数学函数类Math包含在java.lang中,隐式导入。

        ⑦‘A’=65,‘a’=97,'0'=48。小写ch转大写 CH=(char)(A'+ch-'a')。注意char(2个字节)存储范围低于int高于byte

    2.测试代码

    public class BasicStudy {
    	public static void main(String[] args) {		
    		final double PI=3.14159;//定名常量
    
    		//获取当前时间;
    		long currenttime=System.currentTimeMillis();
    		long second=(currenttime/1000)%60;
    		long minute=(currenttime/1000)/60%60;
    		long hour=(currenttime/1000)/3600%24+8;
    		//此处实际差8个小时,由于时区导致!
    		System.out.println("The current time is  "+hour+":"+minute+":"+second+" GMT");
    		
    		//char字符的转换
    		byte b=(byte)'uFFF4';//char16->byte8,显示转换
    		int i='2'+'3';//50+51 char->int
    		int j=2+'a';//97+2 char->int
    		String k="test"+'3';//字符串拼接
    		System.out.println(i+"
    "+j+"
    "+k);
    		
    		//整钱找零,元,0.25,0.1,0.05,0.01
    		Scanner input=new Scanner(System.in);
    		System.out.print("input an amount in double like 89.45----");
    		int money=(int)(100*input.nextDouble());
    		int dollar=money/100;
    		int quarter=money%100/25;
    		int dime=money%100%25/10;
    		int nickel=money%100%25%10/5;
    		int penny=money%100%25%10%5;
    		System.out.println("the charge is---"+dollar+" dolar "+quarter+" quarter "+dime+" dime "+nickel+" nickel "+penny+" penny");	
    				
    	}
    }

    知识点:

         ⑴获取系统时间:System.currentTimeMillis() 返回自1970年1月1日0点整至今的毫秒数。注意0点时间不是我国所在的东8区,我国应往后推8个小时。

         ⑵所有数值运算符都可以用在char操作数。如果另外一个操作数是字符或者数字,那么char操作数转化为数字。如果另外一个操作数是字符串,则字符串拼接

    3.字符串--string类型

           String类是Java预定义类,非基本类型而是引用类型。使用next()读取以空白字符(' ',' ','f',' ',' ',空格,制表,换纸,回车,换行)结束的字符串;或者使用nextline读取一整行文本(以回车键' '结束)的字符串。字符串可以用+与任何类型数值拼接。

                       System.out.print('a'+1+"ABCD"+1);=》输出:98ABCD1
                       System.out.print(1+"ABCD"+'a'+1);=》输出:1ABCDa1

       使用如下:

    Scanner input=new Scanner(System.in);
    System.out.print("Input a string----");
    String s1=input.nextLine();
    System.out.print("Input another string----");
    String s2=input.next();
    String s3=input.next();
    System.out.println(s1+'
    '+s2+'
    '+s3);

          输入输出分别为:

                       Input a string----Welcom to Java
                       Input another string----Welcom to Java
                       Welcom to Java
                       Welcom
                       to

    4.GUI对话框获取输入

            使用JOptionPane.showInputDialog(),返回为字符串。此处设计到输入的数值字符串到数值的转换,如返回“123.45”,实际需要123.45。设计到2个类,Integer和Double,均包含在java.lang中隐式导入,可以直接使用。方法如下:

                    int    intValue = Integer.parseInt(IntString);
                    double  doubleValue = Double.parseDouble(DoubleString);

    如下的代码,输入半径,计算圆的面积:

    import javax.swing.JOptionPane;
    public class BasicStudy {
      public static void main(String[] args) {
    	
         //GUI的使用
         //显示对话窗口,显示输入窗口
         final double PI=3.14159;//定名常量
         String string=JOptionPane.showInputDialog(null,"Enter a double number","输入圆的半径",JOptionPane.QUESTION_MESSAGE);
         double radius=Double.parseDouble(string);//字符串至Double的转换
         JOptionPane.showMessageDialog(null, "The squre of Circle is :
    "+PI*Math.pow(radius,2),"圆的面积",JOptionPane.INFORMATION_MESSAGE);
    				
    	}
    }
    
    输出窗口:

                                                     

    5.Java代码的规范性

        注释:......//行注释,/*....... */块注释,文档注释/** ..........*/能够被JDK中的javadoc提取

        命名习惯:

            ❶变量命名:第一个单词小写,第二个大写。如showInputDialog。避免使用单词缩写
            ❷类名:所有单词首字母大写.MyClass
            ❸大写所有常量,单词之间用下划线连接如MAX_LENGTH
            ❹适当的缩进。且2元运算符与操作数之间留有空格。使用空行将代码分块便于阅读


  • 相关阅读:
    Linux内核设计与实现 总结笔记(第五章)系统调用
    Linux内核设计与实现 总结笔记(第四章)进程调度
    Linux内核设计与实现 总结笔记(第三章)进程
    Linux内核设计与实现 总结笔记(第二章)
    4412 移植x264并且YUV422转x264
    4412 使用usb摄像头拍照YUYV格式
    LDD3 第15章 内存映射和DMA
    LDD3 第13章 USB驱动程序
    ldd3 第12章 PCI驱动程序
    4412 移植mpu9250尝试
  • 原文地址:https://www.cnblogs.com/engineerLF/p/5393104.html
Copyright © 2020-2023  润新知