JAVA入门基础

Wesley13
• 阅读 595

数学中,没有办法用十进制来精确表达1/3.

同样的,计算机中,没有办法用二进制表示0.1

比如:python中,java中 都是一样的。

>>> a=6.0
>>> b=4.9
>>> a-b
1.0999999999999996
>>> x=3.0
>>> y=2.9
>>> x-y
0.10000000000000009
>>> (x-y)>0.1
True

>>> (x-y)==0.1
False
>>>

  在上述代码中: a-b 的值会无限接近于1.1。 x-y 的值会无限接近0.1。

 1 package day02;
 2 
 3 import java.util.Scanner;
 4 
 5 public class inp_demo {
 6 
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9         Scanner scanner=new Scanner(System.in);
10         String name=scanner.next();
11         System.out.println(name);
12                 
13     }
14 
15 }

数据类型的练习:

 1 package day02;
 2 
 3 import java.util.Scanner;
 4 
 5 public class inp_demo {
 6 
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9 //        Scanner scanner=new Scanner(System.in);
10 //        String name=scanner.next();
11 //        System.out.println(name);
12         int a=250;
13         //int b=100000000000;
14         System.out.println(5/2);
15         System.out.println(2/5);
16         int c=2147483647;
17         System.out.println(c+1);
18         
19         //long d=10000000000;
20         long e=10000000000L;
21         long f=1000000000*2*10L;
22         System.out.println("f:"+f);
23         long g=1000000000*3*10L;
24         System.out.println("g>>>"+g);
25         long h=1000000000L*3*10;
26         System.out.println("e>>>"+h);
27         long i;
28         i=System.currentTimeMillis();
29         System.out.println("time:"+i);
30         
31         
32         float j=3.14f;
33         float k,l;
34         k=6.0f;
35         l=4.9f;
36         System.out.println(k-l);
37                 
38     }
39 
40 }

 结果:

2
0
-2147483648
f:20000000000
g>>>-12949672960
e>>>30000000000
time:1535892324164
1.0999999

JAVA入门基础 JAVA入门基础

 1 package day02;
 2 
 3 import java.util.Scanner;
 4 
 5 public class inp_demo {
 6 
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9         
10 //        //布尔类型,占一个字节。
11 //        boolean b1=true;
12 //        boolean b2=false;
13         //字符类型,占有两个字节  java的字符编码表是unicode
14         char o3='m';
15         char o4=' ';
16         char o5=65515;//0~65535
17         System.out.println(o5);
18         char o='中';
19         System.out.println(o);
20         
21         char o1='\u4e2d';
22         System.out.println(o1);
23         
24         char o2=65;
25         System.out.println(o2);
26         
27         System.out.println("(2+2):"+(2+2));
28         System.out.println('2'+'2');
29         
30         System.out.println("char2》\t》》\n》"+'2');
31         
32         
33         
34         
35         
36         
37         
38         
39         
40         
41 //        Scanner scanner=new Scanner(System.in);
42 //        String name=scanner.next();
43 //        System.out.println(name);
44         /*
45         int a=250;
46         //int b=100000000000;
47         System.out.println(5/2);
48         System.out.println(2/5);
49         int c=2147483647;
50         System.out.println(c+1);
51         
52         //long d=10000000000;
53         long e=10000000000L;
54         long f=1000000000*2*10L;
55         System.out.println("f:"+f);
56         long g=1000000000*3*10L;
57         System.out.println("g>>>"+g);
58         long h=1000000000L*3*10;
59         System.out.println("e>>>"+h);
60         long i;
61         i=System.currentTimeMillis();
62         System.out.println("time:"+i);
63         
64         
65         float j=3.14f;
66         float k,l;
67         k=6.0f;
68         l=4.9f;
69         System.out.println(k-l);
70         */
71                 
72     }
73 
74 }

练习

//类型强制转换.从小到大,系统自动转换,从大到小,需要强制转换,强转可能会导致进度丢失,或是溢出
        int age=20;
        long age_l=(long)age;
        System.out.println(age_l);
        
        
        long d=5;//int type into long type
        double e=5;//int type into double type
        double f=3.14f;//float type into double type
        
        double h=25.987;
        int i=(int)h;
        System.out.println(i);//print>>> 25
点赞
收藏
评论区
推荐文章
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Irene181 Irene181
3年前
干掉公式 —— numpy 就该这么学
文|太阳雪来源:Python技术「ID:pythonall」机器学习和数据分析变得越来越重要,但在学习和实践过程中,常常因为不知道怎么用程序实现各种数学公式而感到苦恼,今天我们从数学公式的角度上了解下,用python实现的方式方法。友情提示:不要被公式吓到,它们都是纸老虎关于NumpyNumPy是使用Python进行科学计算的基础软
Wesley13 Wesley13
3年前
java 二进制(原码 反码 补码),位运算,移位运算,约瑟夫问题
一.二进制,位运算,移位运算1.二进制对于原码,反码,补码而言,需要注意以下几点:(1).Java中没有无符号数,换言之,Java中的数都是有符号的;(2).二进制的最高位是符号位,0表示正数,1表示负数;(3).正数的原码,反码,补码都一样;(4).负数的反码它的原码符号位不变,其他位取反;(5).
Wesley13 Wesley13
3年前
Java日期时间API系列31
  时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数,是所有时间的基础,其他时间可以通过时间戳转换得到。Java中本来已经有相关获取时间戳的方法,Java8后增加新的类Instant等专用于处理时间戳问题。 1获取时间戳的方法和性能对比1.1获取时间戳方法Java8以前
Wesley13 Wesley13
3年前
ES6+的新语法
1.opts:Object表示opts的类型是Object类型。这有点类似.Net中的为泛型指定类型。java中为泛型指定类型是用extends关键词。//TODO.Net和java中相同写法的CASE2.opts:?Object表示该类型是非必须的。在java中有类似的学法。//TODOjava中的相同语法
Stella981 Stella981
3年前
Scala系列4:轻松搞定Scala中for,if,while,块表达式等
0.条件表达式   条件表达式一般就是if表达式,if表达式可以根据给定的条件是否满足,根据条件的结果(真或假)决定执行对应的操作。scala条件表达式的语法和Java一样。0.1有返回值的if条件表达式_尖叫提示:_在scala中,跟Java不同,条件表达式也是有返回值的s
Wesley13 Wesley13
3年前
Java中的位运算及简单的算法应用介绍
\TOC\Java中的位运算及简单的算法应用介绍众所周知,计算机底层是二进制。而java作为一门计算机编程语言,也对二进制的位运算提供了完整的支持。在java中,int是32位的,也就是说可以用来实现32位的位运算。方便起见,我们一般用16进制对它赋值,比如:0011表示成16进制是0x3,110111表示成16进制是0x37。
Wesley13 Wesley13
3年前
MySQL数据查询(重点)
1.查询所有列  \为所有列select\fromtable\_name;2.查询指定列selectid,agefromtable\_name;3.查询时添加常量列本次查询有效,不会添加到表中,只显示 可以用as来命名本列名select'java0328'fromtable\_name;
Wesley13 Wesley13
3年前
Java日期时间API系列30
  实际使用中,经常需要使用不同精确度的Date,比如保留到天2020042300:00:00,保留到小时,保留到分钟,保留到秒等,常见的方法是通过格式化到指定精确度(比如:yyyyMMdd),然后再解析为Date。Java8中可以用更多的方法来实现这个需求,下面使用三种方法:使用Format方法、 使用Of方法和使用With方法,性能对比,使用
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这