当前位置: 首页 > news >正文

Java笔记

Scanner input = new Scanner(System.in); // 创建输入流对象 input

int userNum = input.nextInt(); // 使用输入流对象 调用nextInt() 方法输入一个整数到userNum中

int[ ]  array  = {11,2,3,14,15} 

Arrays.sort(array);---->对array由大到小排序

int[] array = new int[10];
Arrays.fill(array,99);
System.out.println(Arrays.toString(array));
//结果 [99, 99, 99, 99, 99, 99, 99, 99, 99, 99]
  •  copy数组
    int[] array = {1,2,3,4,5,6};int [] copy = new int [array.length];
    for(int i=0;i<array.length;i++){copy[i] = array[i];
    ---------------------------------------------------------------------------
    int[] array = new int[10];Arrays.fill(array,2,6,1999);//[2,6)System.out.println(Arrays.toString(array));
    //结果   [0, 0, 1999, 1999, 1999, 1999, 0, 0, 0, 0]

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

int[] array = {1,2,3,4,5,6};
int[] ret = Arrays.copyOf(array,array.length*2);
System.out.println(Arrays.toString(ret));
//结果  [1, 2, 3, 4, 5, 6, 0, 0, 0, 0, 0, 0]

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

  • 局部copy
int[] array = {1,2,3,4,5,6};
int[] ret = Arrays.copyOfRange(array,1,4);//[1,3)
System.out.println(Arrays.toString(ret));
//结果  [2, 3,4]

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

int[] array = {1,2,3,4,5,6};
int[] copy = new int[array.length];
System.arraycopy(array/*拷贝的数组*/,0/*0下标开始*/,copy/*拷贝的名字*/,0,array.length/*[0,array.length)*/);
System.out.println(Arrays.toString(copy));

--------------------------------------------------好用copy-------------------------------------------------------------------

int[] array = {1,2,3,4,5,6};
int[] copy = array.clone();
System.out.println(Arrays.toString(copy));

 二分查找中个用a+(b-a)/2而不用(a+b)/2

首先(a+b)/2和a+(b-a)/2得到的值都是一样的,但当a和b都是两个很大的数时,a+b后可能会超出范围(溢出),而a+(b-a)/2则一定不会。

向下转型的意义

向下转型最大的作用是Java的泛型编程,作用巨大,Java中集合框架作用大都如此。

而在Android开发中,我们在Layout文件夹,用xml写的控件。为什么能在Activity等组件中通过 findViewById() 方法找到呢?为什么 findViewById(R.id.textview) 方法传入TextView的id后,还要转型为TextView呢?这就是 Java 向下转型的一个应用。

相关文章:

  • 非常有科技感的wpf GroupBox 控件
  • 详解WSL(Hyper)网络配置
  • MediaPipe框架解析(二):mediapipe helloworld
  • 进阶向:Django入门,从零开始构建一个Web应用
  • GAN的思考及应用
  • SCAU期末笔记 - 操作系统 英文定义题
  • ShanghaiCity上海,又解锁一塔2025.06
  • PYTHON从入门到实践9-类和实例
  • LeetCode 第80题 删除有序数组中的重复项Ⅱ
  • Modbus 报文结构与 CRC 校验实战指南(二)
  • 学生宿舍智能控电技术的新发展和控制要求
  • 矩阵及矩阵快速幂
  • Kafka4.0初体验
  • [Linux入门] Linux LVM与磁盘配额入门指南
  • 项目目标不一致时,如何校准方向
  • watch、watchEffect和computed函数的区别
  • 【模型部署】如何在Linux中通过脚本文件部署模型
  • Prompt Depth Anything:以提示方式驱动的Depth Anything用于实现4K分辨率下的精确米制深度估计
  • RabbitMQ中,basicAck、basicNack和basicReject是三种核心的消息确认机制
  • 网络安全碎碎恋