您的位置:首页 > 财经 > 产业 > 河南一情况_口碑营销的方法_广告营销案例分析_在线一键生成网页

河南一情况_口碑营销的方法_广告营销案例分析_在线一键生成网页

2024/12/26 3:26:00 来源:https://blog.csdn.net/qq1156148707/article/details/144719908  浏览:    关键词:河南一情况_口碑营销的方法_广告营销案例分析_在线一键生成网页
河南一情况_口碑营销的方法_广告营销案例分析_在线一键生成网页

1.    +的优先级大于==

2.    float默认值是0.0f

3.    java中访问权限问题

4.    数据类型所占字节大小

在 Java 中,各种基本数据类型的大小是固定的,不依赖于具体的操作系统或硬件架构。以下是 Java 中所有基本数据类型的大小和表示范围:


1. 整数类型

数据类型大小(字节)大小(位)范围
byte18-128 到 127
short216-32,768 到 32,767
int432-2,147,483,648 到 2,147,483,647
long864-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807

2. 浮点数类型

数据类型大小(字节)大小(位)精度范围
float432大约 7 位十进制有效数字±1.4E-45 到 ±3.4028235E38
double864大约 15-16 位十进制有效数字±4.9E-324 到 ±1.7976931348623157E308

3. 字符类型

数据类型大小(字节)大小(位)范围
char2160 到 65,535 (Unicode)

说明:Java 的 char 类型使用 Unicode 编码,占用 2 字节,支持所有语言的字符表示。


4. 布尔类型

数据类型大小(字节)大小(位)范围
boolean未明确规定未明确规定truefalse

说明

  • 在 Java 中,boolean 的大小未被明确规定,取决于 JVM 的实现。通常,一个布尔值占用 1 位,但 JVM 为了优化内存布局,可能会按字节或更大的单位存储多个布尔值。
  • 只能表示两种值:truefalse

总结表格

数据类型大小(字节)大小(位)范围 / 精度
byte18-128 到 127
short216-32,768 到 32,767
int432-2,147,483,648 到 2,147,483,647
long864-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
float432精度大约 7 位十进制有效数字
double864精度大约 15-16 位十进制有效数字
char2160 到 65,535(Unicode)
boolean未明确规定未明确规定truefalse

扩展:对象引用类型的大小

  • 引用类型(如 String 或自定义类的实例)的大小依赖于 JVM 和平台。
  • 通常,32 位 JVM 中一个对象引用占用 4 字节,而 64 位 JVM 中占用 8 字节(可能启用指针压缩以优化内存)。

5.  java中实例变量不需要初始化,局部变量必须初始化

在 Java 中,局部变量必须显式初始化后才能使用,否则编译器会报错。局部变量与类的成员变量(实例变量和静态变量)不同,后者会在声明时被自动初始化为默认值。


详细解释

1. 局部变量
  • 局部变量是声明在方法、构造器或代码块中的变量。
  • 特点
    • 存储在栈内存中。
    • 没有默认值,因此必须显式初始化。
    • 在使用之前,Java 编译器会检查是否进行了初始化。
public class Main {public static void main(String[] args) {int x; // 声明局部变量,但未初始化System.out.println(x); // 编译错误:变量 x 可能尚未初始化}
}

正确用法

public class Main {public static void main(String[] args) {int x = 10; // 显式初始化System.out.println(x); // 正常输出:10}
}

2. 类的成员变量
  • 包括实例变量静态变量
  • 特点
    • 会被自动初始化为默认值。
    • 默认值如下:
      • 数值类型(如 int, float, double 等):00.0
      • 布尔类型:false
      • 引用类型:null
public class Main {int instanceVar; // 实例变量static int staticVar; // 静态变量public static void main(String[] args) {Main obj = new Main();System.out.println(obj.instanceVar); // 输出默认值:0System.out.println(staticVar); // 输出默认值:0}
}

3. 局部变量为什么不被自动初始化?
  • Java 设计局部变量不自动初始化是为了避免程序逻辑中隐藏错误。
  • 强制要求显式初始化可以帮助开发者在使用变量之前明确其值,减少潜在的逻辑错误。

4. 特殊情况:局部变量的延迟初始化
  • 如果局部变量在后续某个条件中才初始化,只要在使用之前完成初始化即可。
public class Main {public static void main(String[] args) {int x; // 声明局部变量if (Math.random() > 0.5) {x = 10; // 条件初始化} else {x = 20; // 条件初始化}System.out.println(x); // 使用前确保 x 被初始化}
}
5. 局部变量和final关键字
  • 如果局部变量被声明为 final,那么它必须在声明时或首次使用前被初始化,而且只能初始化一次。
public class Main {public static void main(String[] args) {final int x;x = 10; // 可以初始化一次System.out.println(x);// x = 20; // 编译错误:final 变量已被初始化}
}

总结

  1. 局部变量必须显式初始化,未初始化就使用会导致编译错误。
  2. 类的成员变量(实例变量和静态变量)会被自动初始化为默认值。
  3. 显式初始化局部变量可以增强代码的可读性和安全性。

5    round四舍五入计算方法:

round 表示”四舍五入”,算法为Math.floor(x+0.5) ,即将原来的数字加上 0.5 后再向下取整,所以 Math.round(11.5) 的结果为 12,Math.round(-11.5) 的结果为 -11。

6. java中所有异常类基类都是Throwable

7 与或非表示

在 Java 中,是常见的逻辑运算符,用于进行布尔值的运算。它们分别是:

  • 与运算符(AND)&&(逻辑与)和 &(位与)
  • 或运算符(OR)||(逻辑或)和 |(位或)
  • 非运算符(NOT)!(逻辑非)和 ~(位非)

1. 逻辑与(AND)运算符

  • &&:逻辑与(短路与)
    • 当两个条件都为 true 时,结果为 true;否则为 false
    • 具有“短路”特性:如果第一个条件为 false,则不会再评估第二个条件,因为结果已经确定。
boolean a = true;
boolean b = false;
System.out.println(a && b);  // 输出 false

&:位与

  • 对于布尔值,和 && 相同,但没有短路效果。它会评估两个条件,即使第一个条件为 false
boolean a = true;
boolean b = false;
System.out.println(a & b);   // 输出 false

2. 逻辑或(OR)运算符

  • ||:逻辑或(短路或)
    • 当任意一个条件为 true 时,结果为 true;只有当两个条件都为 false 时,结果才为 false
    • 具有“短路”特性:如果第一个条件为 true,则不会再评估第二个条件。
boolean a = true;
boolean b = false;
System.out.println(a || b);  // 输出 true
  • |:位或
    • 对于布尔值,和 || 相同,但没有短路效果。它会评估两个条件,即使第一个条件为 true
 
boolean a = true;
boolean b = false;
System.out.println(a | b);   // 输出 true

3. 逻辑非(NOT)运算符

  • !:逻辑非
    • 取布尔值的反值。truefalsefalsetrue
 
boolean a = true;
System.out.println(!a);  // 输出 false

4. 位非(NOT)运算符

  • ~:位非
    • 对整数进行按位取反,即每一位都进行反转。对于布尔值 truefalse,它的用法通常不适用。
 
int a = 5;  // 二进制 101
System.out.println(~a);  // 输出 -6,按位取反后,得到 11111111111111111111111111111010(二进制补码表示)

总结:

  • 逻辑运算符&&, ||, !)通常用于布尔值的运算。
  • 位运算符&, |, ~)用于按位操作整数,适用于二进制数值。
public class Main {public static void main(String[] args) {boolean a = true;boolean b = false;// 逻辑与System.out.println("a && b: " + (a && b));  // false// 逻辑或System.out.println("a || b: " + (a || b));  // true// 逻辑非System.out.println("!a: " + !a);            // false// 位与int x = 5, y = 3;  // x = 0101, y = 0011System.out.println("x & y: " + (x & y));    // 1 (0001)// 位或System.out.println("x | y: " + (x | y));    // 7 (0111)// 位非System.out.println("~x: " + (~x));          // -6 (补码反转,11111111111111111111111111111010)}
}

8 堆栈

9 Java 静态函数中不能调用非静态函数的方法;不允许函数参数设置默认值

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com