day02_变量_基本数据类型_数据类型的转换_Scanner_20150731

2024-06-14 01:38

本文主要是介绍day02_变量_基本数据类型_数据类型的转换_Scanner_20150731,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

day02_变量_基本数据类型_数据类型的转换_Scanner_20150731


回顾:

昨天主要讲了3个方面的内容:

1.Linux
     操作系统、开源的、免费
     服务器端
     目录、挂载点、安全级别高
     /:根目录
     /home/soft01:主目录/家
2.java开发环境
   1).java源文件,经过编译,生成.class字节码文件
      JVM加载.class并运行.class
      跨平台、一次编程到处使用
   2)JVM:java虚拟机
              加载并运行.class
      JRE:java运行环境
              除了包含JVM以外还包含运行java程序所需要的必须的环境
          JRE=JVM+java系统类库
      JDK:java开发工具包
              除了包含JRE以外还包含开发java程序所需要的命令工具
          JDK=JRE+开发工具(编译、运行......)
3.eclipse
     IBM、开源的、免费

-------------------------------------------------------------------------------------------------------------------------------------------------------

今天主要内容

1.变量            2.基本数据类型           3.数据类型转换                      4.Scanner用法

**********        ********************        * *****************                     ******************

1.变量:存数据的,代词,指代它所存的那个数

   1)声明:
          int a;   //声明整型变量,名为a
          int b,c,d; //声明三个整型变量,名为b,c,d
   2)命名:
      2.1)只能包含字母、数字、_、$符
            并且不能以数字开头
      2.2)严格区分大小写
      2.3)不能使用关键字
      2.4)可以中文命名,但不建议
      2.5)建议:见名知意、驼峰命名法
   3)初始化:第一次赋值
      3.1)声明同时初始化
            int a = 250;
      3.2)先声明后初始化
            int a;
            a = 250;
   4)使用:
      4.1)变量的使用必须与数据类型匹配
            int a = 25.678;  //编译错误
      4.2)变量在用之前必须声明并初始化
            System.out.println(a); //编译错误,a未声明
            int a;
            System.out.println(a); //编译错误,a未初始化
            int a = 250;
            System.out.println(a); //正确
      4.3)对变量的使用就是对它所存的那个数的使用
            int a = 5;
            a = a + 10; //取出a的值5,加10后,赋值给a
                             //在a本身基础之上增10

代码小demo

package day02;public class VarDemo {//变量练习public static void main(String[] args) {//变量的声明、初始化、赋值/*int a;	//声明整型变量aint b,c,d;	//声明3个整型变量b,c,dint e = 250;	//声明变量e并赋值250int f;	//声明变量ff = 250;	//给变量f赋值250//System.out.println(g);	//编译错误,未声明变量g//int g;//System.out.println(g);	//编译出错,变量g未初始化//int h = 25.67;	//编译出错,类型不匹配int m = 5;System.out.println(m);m = m + 10;System.out.println(m);*//*int a,_a,$,_,_1,$1;	//合法变量名int _$1a_;	//合法变量名*//*int 年龄;	//正确,不建议使用int age;	//建议:见名知意int myJavaScore;	//建议:驼峰命名法*/}}


2.基本数据类型
   1)int: 整型,4个字节,-21个多亿到21个多亿
      1.1)整数直接量默认int型,不能超范围
            int a = 250; //250默认int型
            int b = 10000000000; //编译错误,100亿默认int型,但超范围了
      1.2)两个整数相除,结果还是整数,小数位无条件舍弃
            System.out.println(5/2);  //2
            System.out.println(2/5);  //0
      1.3)整数运算时超范围,会发生溢出,需要避免

   2)long:长整型,8个字节,很大很大
      2.1)long型直接量在数字后加L或l
            long a = 250L;
            long b = 10000000000;  //编译错误,100亿为int型

                   ----  整数的直接量为int型,100亿超过int型表示的范围,故编译错误

            long c = 10000000000L;
      2.2)较大数运算时有可能溢出,建议在第一个数后加L
      2.3)获取自1970.1.1零时到此时此刻的毫秒数
            long a = System.currentTimeMills();
   3)double:浮点型,8个字节,很大很大
      3.1)浮点型直接量默认为double型
            double a = 25.6378;  //25.6378默认double型
      3.2)舍入误差,精确运算场合不能使用

      3.3)小数的直接量为double型,如果float  f = 23.4;  则编译错误

   4)char:字符型,2个字节
      4.1)unicode编码格式,每个字符都有一个对应的码
            char是表现形式,实质上是int
      4.2)有且仅有一个字符
      4.3)字符型直接量需放在一对单引号中
      4.4)对于不方便输出的字符,需\来转义
   5)boolean:布尔型,1个字节,只能存true和false

3.数据类型的转换:
   1)分两种: 从小到大依次为 byte,short,int,long,float,double
                                                      char
      1.1)自动类型转换(隐式类型转):从小类型到大类型转
      1.2)强制类型转换:从大类型到小类型转
                                   (要转换为的数据类型)变量
                   有可能会溢出或精度的丢失
   2)两点规则:
      2.1)整数直接量可以直接赋给byte,short,char,但不能超范围
      2.2)byte,short,char型变量参与运算时,一律转为int再运算

代码小demo:

package day02;public class DataTypeDemo {//练习基本数据类型public static void main(String[] args) {int a = 250;long b = a; //小转大,直接转//int c = b; //编译错误,不能直接把long类型的数赋值给int型long d = 10000000000L; //100亿int e = (int)d; System.out.println(e); //结果为1410065408,100亿超过int范围,强制转换结果溢出double f = 25.678;int g = (int)f;System.out.println(g); //结果为25,强制把double型转换成int型,可能会损失精度//整型直接量可以直接赋值给char、byte、short,不能超范围byte bt1 = 5; byte bt2 = 6;//char、byte、short参与运算时,先转换成整型,然后再运算,故运算结果为整型byte bt3 = (byte)(bt1+bt2); byte bt4 = 5+6;System.out.println(bt3);char c1 = 'a';char c2 = 'b';//char c3 = c1+c2; //编译错误,运算时,先把char型的c1和c2转换成int型,然后进行运算char c3 = 'a'+'b';System.out.println(c3);/*boolean b1 = true;boolean b2 = false;System.out.println(b1);//boolean b3 = 5; //编译错误,boolean的值只能为true或falsechar c1 = '男';char c2 = 'm';char c3 = 5;char c4 = ' ';//char c5 = ''; //编译错误,字符的单引号中必须有且只有一个字符,不能不写//char c6 = '你好'; //编译错误,字符的单引号中必须有且只有一个字符//字符的单引号中必须有且只有字符的单引号中必须有且只有一个字符一个字符char c7 = '\\';System.out.println(c7); //结果为:\System.out.println(2+2); //4System.out.println('2'+2); //52*//*Integer a = 1234;Integer b = 1234;System.out.println(a == b);Integer c = 123;Integer d = 123;System.out.println(c == d);*/	/*int a = 250;//int b = 10000000000; //100亿--超过整型的范围-21亿~21亿System.out.println(5/2); //2System.out.println(2/5); //0int c = 2147483647;c = c + 1;System.out.println(c); //溢出--结果为-2147483648long d = 250L; //long e = 10000000000; //100亿--编译错误,整型的直接量为int型long f = 10000000000L;long g = 1000000000*2*10L; System.out.println(g); //200亿long h = 1000000000*3*10L;System.out.println(h); //溢出long i = 1000000000L*3*10;System.out.println(i); //300亿//把L加在第一个数后面,防止溢出//1970.1.1零时到现在的毫秒数long j = System.currentTimeMillis();System.out.println(j);double k = 2.526;double m = 3.0;double n = 2.9;System.out.println(m - n); //结果:0.10000000000000009System.out.println(1.0/10); //结果:0.1System.out.println(1.0/3); //结果:0.3333333333333333*/}}

4.Scanner的用法:
   1)在package下:
         import java.util.Scanner;
   2)在main中:
         Scanner scan = new Scanner(System.in);
   3)在2之下:
         System.out.println("请输入年龄:");
         int age = scan.nextInt();
     double price = scan.nextDouble();


代码小demo:

package day02;
import java.util.Scanner;  //1.
//Scanner演示
public class ScannerDemo {public static void main(String[] args) {Scanner scan = new Scanner(System.in); //2.System.out.println("请输入你的年龄:");int age = scan.nextInt(); //3.System.out.println("请输入商品的价格:");double price = scan.nextDouble();System.out.println(age);System.out.println(price);}
}

总结:文中红色标记部分为之前掌握的不好的地方,需要加强记忆与理解,其他内容为Java的基础知识点,仍需时而温习之!!!






这篇关于day02_变量_基本数据类型_数据类型的转换_Scanner_20150731的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1059017

相关文章

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

Rust 数据类型详解

《Rust数据类型详解》本文介绍了Rust编程语言中的标量类型和复合类型,标量类型包括整数、浮点数、布尔和字符,而复合类型则包括元组和数组,标量类型用于表示单个值,具有不同的表示和范围,本文介绍的非... 目录一、标量类型(Scalar Types)1. 整数类型(Integer Types)1.1 整数字

使用Python进行文件读写操作的基本方法

《使用Python进行文件读写操作的基本方法》今天的内容来介绍Python中进行文件读写操作的方法,这在学习Python时是必不可少的技术点,希望可以帮助到正在学习python的小伙伴,以下是Pyth... 目录一、文件读取:二、文件写入:三、文件追加:四、文件读写的二进制模式:五、使用 json 模块读写

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g

JAVA中整型数组、字符串数组、整型数和字符串 的创建与转换的方法

《JAVA中整型数组、字符串数组、整型数和字符串的创建与转换的方法》本文介绍了Java中字符串、字符数组和整型数组的创建方法,以及它们之间的转换方法,还详细讲解了字符串中的一些常用方法,如index... 目录一、字符串、字符数组和整型数组的创建1、字符串的创建方法1.1 通过引用字符数组来创建字符串1.2

java如何调用kettle设置变量和参数

《java如何调用kettle设置变量和参数》文章简要介绍了如何在Java中调用Kettle,并重点讨论了变量和参数的区别,以及在Java代码中如何正确设置和使用这些变量,避免覆盖Kettle中已设置... 目录Java调用kettle设置变量和参数java代码中变量会覆盖kettle里面设置的变量总结ja

Perl 特殊变量详解

《Perl特殊变量详解》Perl语言中包含了许多特殊变量,这些变量在Perl程序的执行过程中扮演着重要的角色,:本文主要介绍Perl特殊变量,需要的朋友可以参考下... perl 特殊变量Perl 语言中包含了许多特殊变量,这些变量在 Perl 程序的执行过程中扮演着重要的角色。特殊变量通常用于存储程序的

Java将时间戳转换为Date对象的方法小结

《Java将时间戳转换为Date对象的方法小结》在Java编程中,处理日期和时间是一个常见需求,特别是在处理网络通信或者数据库操作时,本文主要为大家整理了Java中将时间戳转换为Date对象的方法... 目录1. 理解时间戳2. Date 类的构造函数3. 转换示例4. 处理可能的异常5. 考虑时区问题6.

基于C#实现将图片转换为PDF文档

《基于C#实现将图片转换为PDF文档》将图片(JPG、PNG)转换为PDF文件可以帮助我们更好地保存和分享图片,所以本文将介绍如何使用C#将JPG/PNG图片转换为PDF文档,需要的可以参考下... 目录介绍C# 将单张图片转换为PDF文档C# 将多张图片转换到一个PDF文档介绍将图片(JPG、PNG)转

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou