java机试要点
Java机试准备
一般结构: import java.util.Scanner;
public class Main{
public static void main(String[] args){
System.out.println( );
}
}
输入流:
字符串: Scanner input = new Scanner(System.in);
while(input.hasNextLine()){
String str = input.nextLine();
}
整数: Scanner input = new Scanner(System.in);
while(input.hasNext()){
String str = input.nextInt();
}
TreeMap使用:红黑树实现,键值对,默认按键值key升序排列
定义: TreeMap<Integer,Integer>map = new TreeMap<Integer,Integer>();
判断是否包含指定的键名key: if(map.containsKey(key))
获取key值所对应的value: map.get(key);
往map中放入键值对: map.put(key,value);
获取所有key值到set集合中: map.keySet();
遍历输出map中键值对: for (Integer key : map.keySet()) {
System.out.println(key + " " + map.get(key));
}
TreeSet的使用:基于treemap,单元素,元素按升序排列
定义: TreeSet<Integer> set = new TreeSet<Integer>();
for(int i=0;i<num;i++){
int cur = s.nextInt();
放入treeset : set.add(cur);
}
遍历: for(Integer i : set){
System.out.println(i);
}
ArrayList动态数组:
定义: ArrayList<String> set = new ArrayList<String>();
for(int i=0;i<num;i++) {
String str = s.nextLine();
字符串加入数组:set.add(str);
}
按升序排序: Collections.sort(set);
遍历输出字符串数组: for (String str : set) {
System.out.println(str);
}
定义数组: int []arr=new int[128];
数组求长度: int len =arr.length;
字符串的长度:int len =str.length();
检索字符串中某字符的位置:
从前往后:str.IndexOf(" ");从前往后检索空格,返回空格的位置
从后往前:str.lastIndexOf(" ");从后往前检索空格,返回空格位置
检索字符串中的字符:str.charAt(i);返回字符
字符串拆分为字符串数组:String strArr[]= str.split(" ");(以空格拆分字符串为字符串数组)
字符串转换成大写:str.toUpperCase();
字符串转换成小写:str.toLowerCase();
整数转换为二进制:String str = Integer.toBinaryString(n);(转换为01字符串形式)
字符串转换为整数:int i= Integer.parseInt(str,); int i= Integer.parseInt(str,16)(字符串为16进制的,转换为十进制整数)
整数转换为字符串:String s=String.valueOf(i); string s=Integer.toString(i);
字符转换为整数:str.charAt(i)-'0';或者str.charAt(i)-48;
字符转为整数:int num = Integer.valueOf(ch[i]);
类型强制转换: int n=(int)num;(num为double型的)
将字符串转为字符数组:char ch[ ]=str.toCharArray();
截取字符串:str.substring(0,8):截取位置0到位置7的子串
str.substring(8):截取从位置8到末尾的子串
0-9:48-57
A-Z:65-90
a-z:97-122
注:整数过大转换为字符串处理!
java机试要点的更多相关文章
- 华为JAVA机试流程
1.JAVA机试流程:①打开IE浏览器,输入机试系统IP地址(以当天告知的地址为准):②输入姓名.手机,选择“C/C++”或“JAVA”,登录:③登录后显示题目,阅读题目并点击页面最下方的“下载框架文 ...
- Java机试题目_怎样截取字符串
面试题1 怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串.但是要保证汉字不被截半个,如"我ABC"4,应该截为" ...
- 华为2013年西安java机试题目:如何过滤掉数组中的非法字符。
这道题目为记忆版本: 题目2描述: 编写一个算法,过滤掉数组中的非法字符,最终只剩下正式字符. 示例:输入数组:“!¥@&HuaWei*&%123” 调用函数后的输出结果,数组:“Hu ...
- Java机试题目
1.生成一个随机四位数,每位数字不重复. package com.cloud.stagging.lhcloudzuul; import java.util.Random; /** * 1.生成一个随机 ...
- 华为 2015 机试 输出:数字后面的连续出现的(2个或多个)相同字符(数字或者字符),删去一个,非数字后面的不要删除,例如,对应输出为:33aabb55pin。
package 华为机试; //C++ 输入:由数字和字母组成的字符串,例如:333aaabb55ppin //输出:数字后面的连续出现的(2个或多个)相同字符(数字或者字符),删去一个,非数字后面的 ...
- 华为OJ机试训练(一)
题目1 -- 通过输入英文句子.将每一个单词反过来,标点符号顺序不变.非26个字母且非标点符号的情况就可以标识单词结束. 标点符号包含,.!? 比如输入:Hello, I need an apple. ...
- web机试
测试: <html><style> </style><title>Demo</title> <body><div > ...
- 华为机试ACM(字符组合问题)
今晚做了华为的机试,3道ACM题,最后一道是实现从M个不同字符中任取N个字符的所有组合. eg: input:ABC 2 output:AB AC BC 第一个输入为字符串,第二个输入为组合的字符个数 ...
- 北邮14&18年软院机试【参考】答案
2014 Problem A. 奇偶求和 题目描述: 给定N个数,分别求出这N个数中奇数的和以及偶数的和. 输入格式 第一行为测试数据的组数T(1<=T<=50).请注意,任意两组测试数据 ...
随机推荐
- Ubuntu 配置有线网 IP
方法1: 最直接的办法,就是在右上端的网络那里点设置,然后add,选以太网,然后IPV4里,手动设置 -- add IP -- 填入IP地址.网关.子网掩码,OK. 方法2,3见网上教程: Ubunt ...
- .NET开发者如何愉快的进行微信公众号开发
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:这篇文章只是一个如何提高开发效率的简单指导和记录,不会涉及具体的微信公众号开发内容. ...
- Android 框架练成 教你打造高效的图片加载框架(转)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/41874561,本文出自:[张鸿洋的博客] 1.概述 优秀的图片加载框架不要太多, ...
- zoj 3820(2014牡丹江现场赛B题)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5374 思路:题目的意思是求树上的两点,使得树上其余的点到其中一个点的 ...
- Java基础知识点3:集合类
集合类是Java编程中经常会用到的一类常用类库,在这里将会对整个集合类进行介绍: Collection接口: Collection接口是所有集合类的根接口,代表了所有含有多个元素的集合,无论这个集合中 ...
- python 函数的参数定义及调用
参数定义:1. 位置参数: 这是熟悉的标准化参数,位置参数必须在调用函数中定义的准确顺序来传递,在没有默认参数的情况下,传入参数 的精确数目必须和声明的数目一致. def foo(who, ...
- iOS 设置1像素的UIView线
如果是代码实现,直接 在CGRectMake里把对应的参数设置为: 1.0/[UIScreenmainScreen].scale 即可. 如果是用xib实现,就需要将对应的限制拖一个I ...
- CodeForces 515C. Drazil and Factorial
C. Drazil and Factorial time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- mac系统下mysql开机启动总是3307
修改了mysql的my.cnf可还是不行,启动后就是3307,必须关掉再启动. 觉得可能是mac系统在哪里写死了开机启动项. http://queforum.com/mysql/1012987-mys ...
- docker 配置文件引发的问题
好久没有配置 vmware / harbor 了,突然间来了兴趣,结果让我失望了,登陆反复的被refused; 这个是配置文件地址:https://github.com/vmware/harbor/b ...