Java的从浅至深绕坑而行的学习

 1 package day02;
 2 /**
 3  * 1:java初学习,避免面试时一些HR挖的坑。
 4  * @author biexiansheng
 5  *
 6  */
 7 public class Test02 {
 8 
 9     public static void main(String[] args) {
10         // ctrl+shift+f自動排版
11         int a=120;
12         byte b=9;
13         b=(byte)(a+b);//需要强制类型转换
14         System.out.println("b="+b);
15         
16         System.out.println('a'+1);
17         System.out.println('A'+1);
18         System.out.println("hello"+'a'+1);
19         //任何数据类型加字符串等于字符串
20         System.out.println('a'+1+"hello");
21         System.out.println("hello"+1+'a');
22         
23     }
24 
25 }

运行结果:

b=-127 98 66 helloa1 98hello hello1a

 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         //b1,b2时两个变量,变量里面存储的值都是变化的,所以在程序运行中jvm是无法判断里面具体的值
14         //byte类型的变量在进行运算的时候,会自动转换为int类型
15         byte b1=3;
16         byte b2=4;                    //'0'--48 'a'--97 'A'--65
17         //byte b3=b1+b2;报错    
18         //byte b3=(byte)(b1+b2);ok
19         byte b4=3+4;
20         //byte short char ->int->long
21     
22     }
23 
24 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         System.out.println(10/3);
14         System.out.println(10/3.0);
15         System.out.println(10*3.0);
16         System.out.println("3+4="+3+4);
17         //+号代表第一加号,第二连接,第三代表正数。
18         int a=3;
19         System.out.println("a++="+(a++));//先输出再++
20         System.out.println("a="+a);//输出上面的++后面的值
21         System.out.println("++a="+(++a));
22         int b=3;
23         int c;
24         c=b++;//后++,先使用再++
25         //c=++b;先++,先++后使用
26         System.out.println("b="+b);
27         System.out.println("c="+c);
28         
29         
30     }
31 
32 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         int a = 4;
14         int b =(a++)+(++a)+(a+10);
15         //a 5 6  
16         //b 4+6+6+10
17         System.out.println("a="+a);
18         System.out.println("b="+b);
19         
20         
21         int c = 4;
22         int d = (--c)+(c--)+(c*10);
23         //c 3 2
24         //d 3+3+20
25         System.out.println("c="+c);
26         System.out.println("d="+d);
27         
28         
29     }
30 
31 }

答案:

a=6 b=26 c=2 d=26

 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         byte a=3;
14         a++;
15         System.out.println("a="+a);//先使用再++
16         //System.out.println("a++="+(a++));
17         a=(byte)(a+1);//byte类型自动转换为int类型的,所以需要强制转换一下。
18         System.out.println("a="+a);
19         
20         short s=1;
21         s=(short)(s+1);
22         short s1=2;//这是坑,面试的坑
23         s1+=1;//<==>s1=(short)(s1+1);
24         
25     }
26 
27 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         int a=10;
14         int b=20;
15         int c=30;
16         System.out.println(a>b & a>c);//false false flase
17         System.out.println(a<b & a<c);//true true ture
18         System.out.println(a<b & a>c);//true false false
19         System.out.println(a>b & a<c);//false true flase
20         System.out.println("------------");
21         System.out.println(a>b | a>c);//false false false
22         System.out.println(a<b | a<c);//true true true
23         System.out.println(a>b | a<c);//false true true
24         System.out.println(a<b | a>c);//true false true
25         System.out.println("----------");
26         //相同为false,不同为true;逻辑异或
27         System.out.println(a>b ^ a>c);//false false false
28         System.out.println(a<b ^ a<c);//true true ture
29         System.out.println(a>b ^ a<c);//false true true
30         System.out.println(a<b ^ a>c);//true false true
31         System.out.println("------------");
32         System.out.println(!true);
33         System.out.println(!!true);
34         
35         
36     }
37 
38 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         //短路与&&,前错后不执行
14         //短路或||,前对后不执行
15         int x=3;
16         int y=4;
17         //System.out.println((x++)==3 && (++y==4));//前对后执行
18         //System.out.println((x++)==3 & (++y==4));//前对后执行
19         //System.out.println((++x)==3 && (++y==4));//前错后不执行
20         System.out.println((++x)==3 & (++y==4));//前错后不执行
21         System.out.println("x="+x);
22         System.out.println("y="+y);
23         
24     }
25 
26 }
 1 package day02;
 2 import java.util.Scanner;
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         Scanner s=new Scanner(System.in);
13         System.out.println("请输入三个数值a:");
14         int a=s.nextInt();
15         System.out.println("请输入三个数值b:");
16         int b=s.nextInt();
17         if(a==b){
18             System.out.println("a和b相等哟!");
19         }else{
20             System.out.println("a和b的值不相等哟!");
21         }
22         System.out.println("--------------------");
23         int num=a<b? a:b;
24         System.out.println("a,b两个数之间的最小值:"+num);
25         System.out.println("--------------------");
26         System.out.println("请输入三个数值c:");
27         int c=s.nextInt();
28         /*int min=a<b? a:b;
29         int min2=min<c? min:c;
30         System.out.println("a,b,c三个数的最小值:"+min2);*/
31         int min=a<b? (a<c? a:c):(b<c? b:c);
32         System.out.println("a,b,c三个数的最小值:"+min);
33         
34     }
35 
36 }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏较真的前端

关于数组的前端面试题,你是否都能答对?

2223
来自专栏ACM小冰成长之路

HDU-1512-Monkey King

ACM模版 描述 ? 题解 典型的左偏树! 问题的核心是当两个猴子帮派中的大佬斗争之后,这两个大佬要强壮值减半并且两个帮派进行合并。那么涉及到的操作有优先队列的...

1826
来自专栏Bug生活2048

Python自学之路-数据类型和变量

在Python中的整数和浮点数是没有大小限制的,而某些语言是根据其存储长度是有大小限制的,也就是说你可以随便乘除,不用担心溢出的情况,这点Python还是挺友善...

701
来自专栏前端黑板报

一个数字截取引发的精度问题(二)

上篇文章只是简单介绍了Number的 toFixed 方法,周末抽时间把 Number 里的一些方法又看了一下,其中有个方法引起我的注意: Number.pro...

1896
来自专栏司想君

JavaScript闭包,只学这篇就会了

昨天发的文章,排版出现了重大失误。让大家的眼睛受累了。今天再发一遍。 这篇文章使用一些简单的代码例子来解释JavaScript闭包的概念,即使新手也可以轻松参透...

2648
来自专栏Python小屋

Python编程中一定要注意的那些“坑”(二)

之前发过一些坑,请参考Python编程中一定要注意的那些“坑”(一)和Python函数默认值参数的2个坑 今天说说列表的内存自动伸缩带来的坑。 假设有个列表如下...

40012
来自专栏HTML5学堂

JavaScript | 函数定义的两种方法;预编译与执行

HTML5学堂(码匠):在JavaScript当中,函数的定义有两种常见方法,这两种方法有何不同?与这种不同点息息相关的“预编译与执行”又是什么意思? 1.如...

3298
来自专栏布尔

想起温习一下JS中的this apply call arguments

很多时候讲到语言入门,大家会认为就是要了解一下语言的语法、数据类型和常用函数。这一课对于所有的计算机专业的毕业生来说都可以自学,然而在最近的实践中(带了两个实习...

19110
来自专栏苦逼的码农

从0打卡leetcode之day9--字符串转整型

好久没更新了,今天是开学的第一天,这学期选了门算法的课,打算好好刷下《算法导论》这本书,可能接下来会一边分享leetcode的刷题贴,一边分享自己在书上所学的一...

663
来自专栏程序员互动联盟

【C++概念】---vector用法

在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结。 一.基本操作 (1)头文件#include<vector>. (2)创建vector对...

3228

扫码关注云+社区