当前位置:首页 > CN2资讯 > 正文内容

我的世界Java版怎么制造地图 我的世界java怎么导入地图?

3天前CN2资讯


一.运算符

  • 算数运算符

+,-,*,/,%,++,--

1.+,-,*,/

整数除以整数的结果为舍弃了小数部分的整数。

2.%:取余

  • %左右都为正数,左边小于右边结果为左边值,如,4%5=4
  • %左边大于或等于右边结果为左边除以右边的余数,如,5%5=0,7%2=1
  • 面试题:100%3.0的结果为1.0
  • 应该注意的是:当运算负数的取余运算时,结果的符号和被取余数一致。

    如:

    System.out.println(-5%2); System.out.println(-5%-2); System.out.println(5%-2);

    结果为:-1,-1,1

    +还可以作为连接符,用于把一个字符串类型值和一个其他基本数据类型连接,结果为字符串数据。

    如,2+”3”,结果为”23“的字符串;”5+5=“+5+5,结果为 ”5+5=55“。

     

    3.++自增

    在原有数据基础上加1,在赋值给原有数据。

    看下面几个程序:

    1. int a = 3; a++; System.out.println("a="+a); 2. int a = 3; ++a; System.out.println("a="+a); 3. int a = 3 , b; b = a++; System.out.println("a="+a+",b="+b); 4. int a = 3 , b; b = ++a; System.out.println("a="+a+",b="+b);


    结果:1,2运行结果相同。都是,a=4

    3的结果为a=4,b=3,4的结果为a=4,b=4

    分析:1,2是a的独立运算,先增后增结果都一样。3是a和b的运算,先把a的原值赋给b后,a自增。4也是a和b的运算,a自增后,再把a的值(自增后的值)赋给b。

    但是在内存中,都是先运算完右边,再赋值给左边的变量。

    b = a++;:先把a的原值取出来存在一块临时空间里,在运算a++即a=a+1,运算完成后,把临时空间里的值赋给b;

    b = ++a;:先运算右边,把结果赋值给b。

    测试:考虑如下代码的运行结果。

    int i = 3; i = i++; System.out.println("i="+i);

    结果:i=3

    原因分析:在内存中,先把i的原值取出来放在一个temp临时变量里面,再把i的原值拿到运算区进行运算(i++),把结果(4)赋值给右边的i,最后把临时变量temp里的3再赋值给左边的i。

    用代码表示:

    int temp = i; i = i + 1; i = temp;
    • 赋值运算符

    赋值运算符:=,+=,-=,*=,/=,%=等

    面试题:以下程序的区别

    1.

    short s = 3; s+=4; Sytem.out.println("s="+s);

    2.

    short s = 3; s = s + 4; Sytem.out.println("s="+s);


    答案:第一个编译运行正确,第二个报错。

    原因:java在编译 short s = 3;时,由于3是int型数据,不能直接赋值给short型数据,可能会丢失精度。java底层会自动判断3在short型数据所表示的范围内,如果在,就强制类型转换,不在则报错(可能丢失精度)。

    在编译 s = s+4 时,由于右边s的值不确定,给它加上4可能会丢失精度。所以第二个程序会报可能丢失精度的错误。

    在编译 s+=4 时,同  short s = 3;都为赋值运算。

    • 比较运算符&逻辑运算符

     

    比较运算符:>,<,>=,<=,==,!=,instanceof

    比较运算后的结果:true或false。

    逻辑运算符:!,&,&&(短路与),|,||(短路或),^(异或)

    逻辑运算符作用:连接两个布尔类型的表达式

    • 位运算符

    位运算符是直接对二进制进行运算。

    位运算能提高效率:

    练习:

    1.计算2*8

    直接使用2*8计算的话,内存中要进行多次的乘法或加法,而使用2<<3,只需要移位即可。

    2.互换两个整数的值

    int a = 3 , b = 5; //使用第三方变量 int temp; temp = a; a = b; b = temp; system.out.println("a="+a+",b="+b); int a = 3 , b = 5; //不用第三方变量 a = a + b; //a = 3+5=8 b = a - b; //b = 8-5=3 a = a - b; //a = 8-3 = 5 system.out.println("a="+a+",b="+b); int a = 3 , b = 5; //使用移位运算,提高效率 //利用异或的性质:一个数异或两次同一个数,结果还为这个数 a = a^b; //a = 3^5 b = a^b; //b = (3^5)^5 = 3 a = a^b; //a = (3^5)^3 = 5 system.out.println("a="+a+",b="+b);



    • 三元运算符

    格式:(条件表达式)?表达式1:表达式2;

    如果条件表达式的结果为true,运算后的结果为表达式1,否则为表达式2。

    举例:获取两个数中的较大值。

    z = (x>y)?x:y;  /运算后z的值就是x,y中较大的一个。

    二.程序流程控制

    • 顺序结构

    从上到下依次运行。

    • 判断结构

    if语句:

  • 格式1:
  • if(条件表达式){

           执行语句;

    }

  • 格式2
  • if(条件表达式){

          执行语句;

    }else{

          执行语句;

    }

  • 格式3
  • if(条件表达式1){

          执行语句;

    }else if(条件表达式2){

          执行语句;

    }

    else{

          执行语句;

    }

    • 选择结构

    switch语句:

    格式:

    switch(表达式){

    case 取值1:

          执行语句;

    break;

    case

         执行语句;

    break;

         …

         default:

    break;

    }

    注意:1.default可以写在第一个判断,但是程序会从第一个case开始执行,判断完所有case,才执行default。

    2.右花括号前面的一个“break”可以省略。

    3.多个case下的执行语句一致,应该这样:

    case 1: case 2: ... //执行语句 break;



    switch中的表达式只能为byte,short,int,char。

    java1.5加入了枚举

    java7加入了字符串

    if和switch的区别:

    if:

  • 对具体的值进行判断
  • 对区间判断
  • 对运算结果是boolean的表达式进行判断
  • switch:

  • 对具体的值进行判断
  • 值得个数通常是固定的
  • 对于几个固定值得判断,建议使用switch语句,因为switch语句会将具体的答案都加载进内存,效率较高。

    常用的还是if语句,相比switch书写简单,功能较强。

    • 循环结构

    循环的使用场景:

  • 当对某些代码执行很多次时,使用循环结构完成。
  • 当对一个条件进行一次判断时,可以使用if语句,当对一个条件进行多次判断时,可以使用while语句。
  • 注意:

  • 在使用循环时,一定要明确,哪些语句需要参与循环,哪些不需要。
  • 通常情况下,需要定义条件,需要控制次数。
  • 循环结构由三种方式:

    1.while

    格式:

    while(条件表达式){

           执行的循环语句;

    }

    2. do while

    do{

            执行的循环语句;

    }

    while(条件表达式) ;

    注意:while后有分号

    do while无论条件是否满足,要执行的循环语句都会执行一遍。

    3. for循环

    for(初始化表达式;循环条件表达式;循环后的操作表达式){

      执行的循环语句(循环体);

    }

    先执行初始化表达式,并且知道循环结束,只读一次,然后判断循环条件,为真就执行一次循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复整个过程,直到条件不满足为止。

    • for和while的特点:
  • for和while可以互换
  • 格式上的不同,在使用上有些区别:
  •                     如果需要通过变量来对循环进行控制,该变量只作为循环增量存在时,区别就体现出来了。

                        这个变量的作用域不同,一般while循环的控制变量在while循环外,而for循环一般定义在for循环内,for循环外面访问不了;如果不在循环外使用这个变量使用for循环可以做到优化内存,因为for循环完后,这个控制变量就被销毁。

    面试题:求下面程序的执行结果.

    int x = 1; for(System.out.println("a"); x<3; System.out.println("b")){ System.out.println("c"); x++; }

    答案::a c b c b

    while练习:

    累加器思想:

    //计算1~10的和 int x = 1; int sum = 0; while(x<11){ sum += x; x++; }

     

    计数器思想:

    //求1~100中能被6整数的数的个数 int x = 1; int k = 0; while(x<101){ if(x%6==0){ k++; } x++; } System.out.println(k);

    无限循环最简单的形式:

    while(true){}

    for(; ; ){}

    for循环的嵌套:

    一种重复情况下的每一次重复都对应另外一种情况的重复,就使用for循环的嵌套。

    范例:

    /* ***** **** *** ** * */ for (int i = 0; i<5; i++) { for (int y = 0; y<5-i; y++) { System.out.print("*"); } System.out.println(); }

     

    /* 54321 4321 321 21 1 */ for (int i = 0; i<5; i++) { for (int j = 5-i; j>0; j--) { System.out.print(j); } System.out.println(); }

     

    //九九乘法表 for (int i = 1; i<10; i++) { for (int j=1 ; j<=i; j++) { System.out.print(j+"*"+i+"="+j*i+"\t"); } System.out.println(); }

     

    /* * * * * * * * * * * * * * * * */ for (int i = 0; i<5; i++) { for (int j = 0; j<i; j++) { System.out.print(" "); } for (int j = 0; j<5-i;j++ ) { System.out.print("* "); } System.out.println(); }


      你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/21796.html

      分享给朋友:

      “我的世界Java版怎么制造地图 我的世界java怎么导入地图?” 的相关文章

      Linode Speed Test:优化服务器性能的必备工具与方法

      在互联网时代,速度是衡量服务器性能的重要标准之一。Linode Speed Test 是一种专门用来评估Linode服务器速度和延迟的方法。对于任何希望评估其在线服务效率的用户来说,这项测试提供了关键的数据支持。你可以很方便地通过Linode的官网或者第三方工具来完成这一流程。 Linode成立于2...

      KVM是什么?深入了解KVM的定义、工作原理及应用场景

      KVM的定义与概念 谈到KVM时,首先想到的就是“键盘、显示器和鼠标”的组合,它让我们可以用一组设备控制多台计算机。这种技术非常适合在数据中心或需要远程管理的环境中使用。我对这个系统产生了兴趣,因为它显著提高了管理效率,节省了空间,还所有的操作都变得更简便。想象一下,如果有多台服务器,你需要同时监控...

      原生IP的重要性及其在外贸中的应用价值

      原生IP的定义与特点 谈到原生IP,这个概念在网络世界中显得极为重要。简单来说,原生IP是指那些与虚拟专用服务器(VPS)所在国家一致的IP地址。这意味着,它们的注册信息和其实际位置是相符的,根本没有经过修改或伪造。这一点在外贸业务中尤为重要,很多情况下,企业需要保证他们的服务器IP地址真的是注册所...

      蘑菇云:自然与核爆炸的惊人现象及其深远影响

      蘑菇云这个词,一提起来让人既熟悉又敬畏。它的外形就像个倒立的蘑菇,顶部宽大、底部则较小,这是因为它源自于强大爆炸所产生的气体。这种云朵看似平常,却是一种强烈爆炸后气体与空气混合的结果。虽然蘑菇云在现代多被与核爆炸联系在一起,但实际上,火山喷发及一些天体撞击也可能产生自然形成的蘑菇云。 了解蘑菇云的形...

      泰国VPS市场分析:高效、可靠的云服务器选择

      泰国VPS市场概述 近年来,泰国的VPS市场迎来了快速的发展。作为东南亚的一个重要互联网和商业枢纽,泰国吸引了越来越多的国内外服务商。这一切的变化让我感受到了市场的活力,尤其是在曼谷,一个充满竞争和机会的城市。在这片土地上,VPS服务逐渐成为了企业和个人用户实现数字化转型的重要工具。 在研究泰国VP...

      如何有效使用WP Rocket插件提升WordPress网站性能

      WP Rocket是一个强大的高级WordPress缓存插件,它的使用对于提升网站的速度和性能起着至关重要的作用。如今,网站的加载速度对于用户体验和SEO排名都有着重要的影响。WP Rocket通过一系列功能和设置,帮助用户轻松优化自己的网站,进而增加访问量和客户满意度。 在使用WP Rocket插...