华为二面!!!被问常用API,这也太偏门了吧,我秀了一波hhhh~

华为二面!!!被问常用API,这也太偏门了吧,我秀了一波hhhh~

  • 常用API
    • 一、API概述
    • 二、Scanner类
      • 代码
    • 三、Random类
      • 代码
    • 四、* ArrayList类
      • **存储基本数据类型**
      • 代码
    • 五、匿名对象

昨天我去了华为面试,问我常用API,我以为我被搞到了,可惜我也是对API很有见解的

常用API

一、API概述

​ API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的 字典 ,是JDK中提供给 我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学 习这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。

二、Scanner类

  • 类名

java.util.Scanner :该类需要import导入后使用。

  • 构造方法

public Scanner(InputStream source) : 构造一个新的 Scanner ,它生成的值是从指定的输入流扫描的。

  • 成员方法

public int nextInt() :将输入信息的下一个标记扫描为一个 int 值。

代码

一个可以解析基本类型和字符串的简单文本扫描器。 例如,以下代码使用户能够从 System.in 中读取一个数:

//1\. 导包 
import java.util.Scanner;
public class Demo01_Scanner {public static void main(String[] args) {//2\. 创建键盘录入数据的对象 Scanner sc = new Scanner(System.in); //3\. 接收数据 System.out.println("请录入一个整数:"); int i = sc.nextInt(); //4\. 输出数据 System.out.println("i:"+i); } 
}

备注:System.in 系统输入指的是通过键盘录入数据。

三、Random类

此类的实例用于生成伪随机数。

  • 类名

java.util.Random :该类需要import导入后使用。

  • 构造方法

public Random() : 创建一个新的随机数生成器。

  • 成员方法

public int nextInt(int n) :返回一个伪随机数,范围在 [0,5)之间的 int 值。

代码

使用Random类,完成生成3个10以内的随机整数的操作。

//1\. 导包
import java.util.Random;
public class Demo01_Random {public static void main(String[] args) {//2\. 创建键盘录入数据的对象Random r = new Random();for(int i = 0; i < 3; i++){//3\. 随机生成一个数据int number = r.nextInt(10);//4\. 输出数据System.out.println("number:"+ number);}}
}

备注:创建一个 Random 对象,每次调用 nextInt() 方法,都会生成一个随机数。

四、* ArrayList类

​ 数组的长度是固定的,无法适应数据变化的需 求。为了解决这个问题,Java提供了另一个容器 java.util.ArrayList 集合类,让我们可以更便捷的存储和操作对 象数据。
java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素。此类提供一些方法来操作内部存储 的元素。 ArrayList 中可不断添加元素,其大小也自动增长。

  • 类名

    java.util.ArrayList <E> :该类需要 import导入使后使用。
    <E> :表示一种指定的数据类型,叫做泛型。E 取自Element(元素)的首字母。在出现 E 的地方,我们使 用一种引用数据类型将其替换即可,表示我们将存储哪种引用类型的元素。代码如下:

    ArrayList<String>,ArrayList<Student>
  • 构造方法

    public ArrayList() :构造一个内容为空的集合。

    基本格式:

    ArrayList<String> list = new ArrayList<String>();
在JDK 7后,右侧泛型的尖括号之内可以留空,但是<>仍然要写。简化格式:
    ArrayList<String> list = new ArrayList<>();
  • 成员方法

    对于元素的操作,基本体现在——增、删、查。常用的方法有:

    public boolean add(E e) :将指定的元素添加到此集合的尾部。

    public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。

    public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。

    public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。

存储基本数据类型

ArrayList对象不能存储基本类型,只能存储引用类型的数据。类似 不能写,但是存储基本数据类型对应的 包装类型是可以的。所以,想要存储基本类型数据, <> 中的数据类型,必须转换后才能编写,转换写法如下:

基本类型基本类型包装类
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

代码

public class Demo01ArrayListMethod {public static void main(String[] args) {//创建集合对象ArrayList<String> list = new ArrayList<String>();//添加元素list.add("黑岛正义");list.add("永远喜欢");list.add("泷本日富美");//public E get(int index):返回指定索引处的元素 System.out.println("get:"+list.get(0)); System.out.println("get:"+list.get(1)); System.out.println("get:"+list.get(2)); //public int size():返回集合中的元素的个数 System.out.println("size:"+list.size()); //public E remove(int index):删除指定索引处的元素,返回被删除的元素System.out.println("remove:"+list.remove(0)); //如需资料添加公主号:ma-xiaoguo//遍历输出 for(int i = 0; i < list.size(); i++){System.out.println(list.get(i));}}
}

String并不是一个基本数据类型,而是一个类(首字母大写都是类),java的String类在lang包里, java.lang包是提供利用java编程语言进行程序设计的基础类,在项目中使用的时候不需要import。

五、匿名对象

概念:
创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。虽然是创建对象的简化写法,但是应用 场景非常有限。匿名对象可以作为方法的参数和返回值。

一个匿名对象只能使用一次

  • 作为参数:
    class Test { public static void main(String[] args) { // 普通方式 Scanner sc = new Scanner(System.in); input(sc); //匿名对象作为方法接收的参数 input(new Scanner(System.in)); }public static void input(Scanner sc){ System.out.println(sc); } }
  • 作为返回值:
    class Test2 { public static void main(String[] args) { // 普通方式 Scanner sc = getScanner(); }public static Scanner getScanner(){ //普通方式 //Scanner sc = new Scanner(System.in); //return sc; //匿名对象作为方法返回值 return new Scanner(System.in); } }

最后,祝大家早日学有所成,拿到满意offer,快速升职加薪,走上人生巅峰。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

空值为0非空为1_万达广场4周年,1降到底!0元送万张杂技团门票、人气餐饮6.8折,这波周年庆我先锁为敬...

作为向来宠你没商量的国民商场4周年店庆&#xff0c;福利当然少不了&#xff01;黄金克减zui高100元餐饮全单6.8折&#xff0c;更享折上zhe更有街舞争霸赛、王者荣耀争霸赛等精彩活动等你打卡&#xff0c;?就问你来不来&#xff1f;精品超市&#xff0c;实力宠粉没有套路&…

linux注意的一些地方

assert宏的原型定义在<assert.h>中&#xff0c;其作用是如果它的条件返回错误&#xff0c;则终止程序执行 #include <assert.h>void assert( int expression ); assert的作用是现计算表达式 expression &#xff0c;如果其值为假&#xff08;即为0&#xff09;&…

处理多个选择结果

比如说选择段落 $("p”)&#xff0c;这样就会把页面的所有段落都选中。jQuery提供.each()方法来对选中的结果进行循环处理&#xff0c;而且在每次执行函数时&#xff0c;都会给函数传递匹配元素在选中结果里所处位置的数字值作为参数&#xff08;从零开始的整形变量&#…

随手拈来尽是折劲额事体

昨天中午&#xff0c;justina同学请我去港丽吃饭&#xff0c;世界顿时美好了&#xff01; 猛地发现&#xff0c;港丽的酸菜鱼竟然非常好吃&#xff0c;除了价钱贵&#xff0c;基本没有缺点了。 吃饭的时候&#xff0c;看到两件有劲的事情&#xff0c;一件比一件更折劲&#xff…

清北学霸的书单居然那么有讲究?看看你比学霸少看了哪些书......

一直以来&#xff0c;少年物理学家为大家分享了许多物理知识、科学家的小故事&#xff0c;以及生活中的趣味科学&#xff0c;得到了许多粉丝们的支持&#xff01;为了表达对大家的感谢&#xff0c;在新春之际&#xff0c;我们决定发起“最美学习萌娃”评选活动&#xff0c;借助…

FastGithub让Github畅通无阻

前言我近半年来被github的抽风虐得没脾气了&#xff0c;虽然我有代理的方式来上网&#xff0c;但代理速度并不理想&#xff0c;而且有时代理服务一起跟着抽风。这时候&#xff0c;我会搜索“github访问不了”相关题材&#xff0c;其中有“Github镜像服务器加速版”的&#xff0…

.Net性能调优-垃圾回收!!!最全垃圾回收来了

目前项目开发基本都基于.NetCore 3.1以上了&#xff0c;有些老版本的规则和概念也没有列出来,低版本的垃圾回收类型和内存释放方式会有所不同 垃圾回收器为什么存在 开发人员不必手动释放内存。 有效分配托管堆上的对象。 回收不再使用的对象&#xff0c;清除它们的内存&…

平流式初沉池贮砂斗计算_城市污水处理厂产泥量的计算

污泥是污水处理过程的副产物&#xff0c;包括筛余物、沉泥、浮渣和剩余污泥等。污泥体积约占处理水量的0.3%~0.5%左右&#xff0c;如水进行深度处理&#xff0c;污泥量还可能增加0.5~1倍。一、污水处理污泥分类及特性1、按成分不同分污泥&#xff1a;以有机物为主要成分。其主要…

C# 图片加水印例程

using System;using System.IO;using System.Collections;using System.Drawing;using System.Drawing.Drawing2D;using System.Drawing.Imaging; namespace Imag_writer{/// <summary>/// 水印的类型/// </summary>public enum WaterMarkType{ /// <summary&…

从N个元素中选择第i小的元素

时常在笔试,面试题中看到这个问题,《算法导论》中给出了很好的解答。 Selection of the ith smallest element of the array A can be done in θ(n) times. The psuedocode is following: CodeRandomized_Select(A,p,r,i){ if pr then return A[p] qRandomized_…

Blazor 模板化组件开发指南

翻译自 Waqas Anwar 2021年4月15日的文章 《A Developer’s Guide To Blazor Templated Components》 [1]在我之前的一篇文章 Blazor 组件入门指南中&#xff0c;我介绍了组件参数&#xff0c;并向您展示了如何将数据作为参数传递给 Blazor 组件以定制化其功能。在这篇文章中&a…

别太贪婪,这些技能能让你一辈子满足

全世界只有3.14 % 的人关注了青少年数学之旅在这个资讯丰富且易获取的时代&#xff0c;越来越多的人不愿意花时间阅读书籍&#xff0c;碎片化阅读成了主流。人们获取的东西多而杂&#xff0c;很难系统、全面。海量信息对人是冲击&#xff0c;更是诱惑。谁不想了解天下奇闻&…

纳尼???我JVM优化过头了,直接把异常信息优化没了?怎么办

你好呀&#xff0c;我是why。 你猜这次我又要写个啥没有卵用的知识点呢&#xff1f; 不好意思&#xff0c;问的稍微有点早了&#xff0c;啥提示都没给&#xff0c;咋猜呢&#xff0c;对吧&#xff1f; 先给你上个代码&#xff1a; public class ExceptionTest {public stati…

angular $watch

在scope内置的所有函数中&#xff0c;用得最多的可能就是$watch 函数了&#xff0c;当你的数据模型中某一部分发生变化时&#xff0c;$watch函数可以向你发出通知。你可以监控单个对象的属性&#xff0c;也可以监控需要经过计算的结果&#xff08;函数&#xff09;&#xff0c;…

C# 读写ACCESS的OLE对象,演示图片与长文件的读写

网络上的读写OLE对象的代码是多&#xff0c;不过多是转载的&#xff0c;大部分人从来都没实际测试过&#xff0c;只是COPY来COPY去。我重来没看到一个真正可以运行的东东。没办法&#xff0c;只有自力更生&#xff0c;花了一点时间出了点研究成果&#xff0c;写到这里做个记录。…

RHCE课程-初级部分6、编辑工具VIM,网络配置,进程优先,日志文件简介。

我们通常用各种编辑工具来处理文本文件 常用的编辑工具:VIVIMEMACSVI和VIM的区别它们都是多模式编辑器&#xff0c;不同的是vim 是vi的升级版本&#xff0c;它不仅兼容vi的所有指令&#xff0c;而且还有一些新的特性在里面。vim的这些优势主要体现在以下几个方面&#xff1a;易…

WPF等待动画

WPF开发者QQ群&#xff1a; 340500857 | 微信群 -> 进入公众号主页 加入组织欢迎转发、分享、点赞、在看&#xff0c;谢谢~。 01—效果预览效果预览&#xff08;更多效果请下载源码体验&#xff09;&#xff1a;02—代码如下一、CycleLoading.cs 代码如下using System.Win…

假期别在家里要发霉了?可以靠他们度过无聊时光

全世界只有3.14 % 的人关注了青少年数学之旅在这个资讯丰富且易获取的时代&#xff0c;越来越多的人不愿意花时间阅读书籍&#xff0c;碎片化阅读成了主流。人们获取的东西多而杂&#xff0c;很难系统、全面。海量信息对人是冲击&#xff0c;更是诱惑。谁不想了解天下奇闻&…

cs6序列号 mac版photoshop_重磅!Parallels Desktop 16 M1版发布

Parallels 现已发布 Parallels Desktop 16 技术预览版&#xff0c;可以在搭载 M1 芯片的 Mac 电脑上运行。该公司表示&#xff0c;它创建了一个 “使用 Apple M1 Mac 芯片硬件辅助虚拟化的新虚拟化引擎”&#xff0c;允许用户在虚拟机中运行基于 Arm 的操作系统&#xff0c;例如…

华为二面!!!面试官直接问我Java中到底什么是NIO?这不是直接送分题???

华为二面&#xff01;&#xff01;&#xff01;面试官直接问我Java中到底什么是NIO&#xff1f;这不是直接送分题&#xff1f;&#xff1f;&#xff1f;什么是NIO缓冲区(Buffer)缓冲区类型获取缓冲区核心属性核心方法非直接缓冲区和直接缓冲区非直接缓冲区直接缓冲区通道(Chann…