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机试要点的更多相关文章

  1. 华为JAVA机试流程

    1.JAVA机试流程:①打开IE浏览器,输入机试系统IP地址(以当天告知的地址为准):②输入姓名.手机,选择“C/C++”或“JAVA”,登录:③登录后显示题目,阅读题目并点击页面最下方的“下载框架文 ...

  2. Java机试题目_怎样截取字符串

    面试题1  怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串.但是要保证汉字不被截半个,如"我ABC"4,应该截为" ...

  3. 华为2013年西安java机试题目:如何过滤掉数组中的非法字符。

    这道题目为记忆版本: 题目2描述: 编写一个算法,过滤掉数组中的非法字符,最终只剩下正式字符. 示例:输入数组:“!¥@&HuaWei*&%123” 调用函数后的输出结果,数组:“Hu ...

  4. Java机试题目

    1.生成一个随机四位数,每位数字不重复. package com.cloud.stagging.lhcloudzuul; import java.util.Random; /** * 1.生成一个随机 ...

  5. 华为 2015 机试 输出:数字后面的连续出现的(2个或多个)相同字符(数字或者字符),删去一个,非数字后面的不要删除,例如,对应输出为:33aabb55pin。

    package 华为机试; //C++ 输入:由数字和字母组成的字符串,例如:333aaabb55ppin //输出:数字后面的连续出现的(2个或多个)相同字符(数字或者字符),删去一个,非数字后面的 ...

  6. 华为OJ机试训练(一)

    题目1 -- 通过输入英文句子.将每一个单词反过来,标点符号顺序不变.非26个字母且非标点符号的情况就可以标识单词结束. 标点符号包含,.!? 比如输入:Hello, I need an apple. ...

  7. web机试

    测试: <html><style> </style><title>Demo</title> <body><div > ...

  8. 华为机试ACM(字符组合问题)

    今晚做了华为的机试,3道ACM题,最后一道是实现从M个不同字符中任取N个字符的所有组合. eg: input:ABC 2 output:AB AC BC 第一个输入为字符串,第二个输入为组合的字符个数 ...

  9. 北邮14&18年软院机试【参考】答案

    2014 Problem A. 奇偶求和 题目描述: 给定N个数,分别求出这N个数中奇数的和以及偶数的和. 输入格式 第一行为测试数据的组数T(1<=T<=50).请注意,任意两组测试数据 ...

随机推荐

  1. vue-cli构建vue项目

    参考资料:Vue2.0 新手完全填坑攻略—从环境搭建到发布 1.Node.js安装 https://nodejs.org/en/download/ 2.安装vue-cli npm install -g ...

  2. Android图片上传问题小结

    1.图片的显示 出现OOM,原因一般为图片太大, 直接进行尺寸压缩即可. 2.图片的上传(服务器有大小限制) 出现OOM,原因一般为图片太大, 做一次尺寸压缩, 再做一次质量压缩,压缩质量(0-100 ...

  3. 【控制iOS7兼容iOS6 状态栏的显示不完全 简单缩写】

    #if ios7 self.automaticallyAdjustsScrollViewInsets = YES; self.edgesForExtendedLayout = UIRectEdgeNo ...

  4. Socket通信原理探讨(C++为例)

    一.网络中进程之间如何通信? 本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 1.消息传递(管道.FIFO.消息队列) 2.同步(互斥量.条件变量.读写锁.文件和写记录锁.信号量) 3 ...

  5. jvm中的年轻代 老年代 持久代 gc

    虚拟机中的共划分为三个代:年轻代(Young Generation).老年代(Old Generation)和持久代(Permanent Generation).其中持久代主要存放的是Java类的类信 ...

  6. 分布式缓存技术redis学习系列(五)——redis实战(redis与spring整合,分布式锁实现)

    本文是redis学习系列的第五篇,点击下面链接可回看系列文章 <redis简介以及linux上的安装> <详细讲解redis数据结构(内存模型)以及常用命令> <redi ...

  7. 解决webstorm卡顿问题

    webstorm强大的功能就不多做介绍了.但是它的缺点也显而易见:吃内存. 电脑配置稍低一点,运行webstorm就特别容易卡顿,特别是项目比较大的时候,那卡顿得不要不要的. 在我的笔记本8g内存 2 ...

  8. Spring任务调度之Spring-Task

    一.前言 上面两篇介绍了在Spring 中使用Timer与Quartz,本篇将介绍Spring3.0以后自主开发的定时任务工具,spring task,可以将它比作一个轻量级的Quartz,而且使用起 ...

  9. Python2 连接MySQL

    先安装MySQL-python yum install -y MySQL-python 测试代码: # -*- coding: utf-8 -*- import os import MySQLdb i ...

  10. JAVA反编工具件安装 JD-eclipse

    想看Android  API源码,但是只有class文件,于是找了个反编译工具Java Decompiler,免费的反编译工具.eclipse插件:JD-eclipse. 安装步骤: 1.确保计算机上 ...