华为Java机试题锦集.docx

上传人:b****4 文档编号:5199466 上传时间:2022-12-13 格式:DOCX 页数:12 大小:18.95KB
下载 相关 举报
华为Java机试题锦集.docx_第1页
第1页 / 共12页
华为Java机试题锦集.docx_第2页
第2页 / 共12页
华为Java机试题锦集.docx_第3页
第3页 / 共12页
华为Java机试题锦集.docx_第4页
第4页 / 共12页
华为Java机试题锦集.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

华为Java机试题锦集.docx

《华为Java机试题锦集.docx》由会员分享,可在线阅读,更多相关《华为Java机试题锦集.docx(12页珍藏版)》请在冰豆网上搜索。

华为Java机试题锦集.docx

华为Java机试题锦集

2021年华为Java机试题锦集

2021年华为Java机试题锦集

  Java对程序提供了安全管理器,防止程序的非法访问。

下面是我收集的华为Java机试题,希望大家认真阅读!

  1.程序实现目标:

输入一个字符串,将其各个字符对应的ASCII值加5后,输出结果。

  程序要求:

该字符串只包含小写字母,若其值加5后的字符值大于z,将其转换成从a开始的字符。

  packagecom.xcbeyond;

  /**

  *@authorxcbeyond

  *2021-5-7下午10:

37:

43

  *1.程序实现目标:

输入一个字符串,将其各个字符对应的ASCII值加5后,输出结果。

  *程序要求:

该字符串只包含小写字母,若其值加5后的字符值大于z,将其转换成从a开始的字符。

  */

  publicclassStringParseASCII{

  publicstaticvoidmain(String[]args){

  System.out.print(stringParseASCII(abx));

  }

  publicstaticStringstringParseASCII(Stringstr){

  StringBufferresult=newStringBuffer();

  chartmp;

  for(inti=0;i

  int[]tmp=arr[i];

  Arrays.sort(tmp);

  minArr[i]=tmp[0];

  }

  returnminArr;

  }

  }

  9.输入:

aaa,cattiger.123dd

  输出:

tiger

  功能描述:

键盘输入一句话

  输出一句话中最常的单词,如果最长的出现多次,返回第一个。

  这句话只包含数字字母和标点。

  packagecom.xcbeyond;

  importjava.util.ArrayList;

  importjava.util.Scanner;

  /**

  *

  *@authorxcbeyond

  *2021-5-10下午09:

45:

03

  *9.输入:

aaa,cattiger.123dd

  *输出:

tiger

  *功能描述:

键盘输入一句话

  *输出一句话中最常的单词,如果最长的出现多次,返回第一个。

  *这句话只包含数字字母和标点。

  */

  publicclassGetLongString{

  publicstaticvoidmain(String[]args){

  System.out.println(请输入一句话:

);

  Scannerconsole=newScanner(System.in);

  Stringstr=console.nextLine();

  System.out.println(最长的单词为:

+getLongString(str));

  }

  publicstaticStringgetLongString(Stringstr){

  String[]wordStr=str.split([,.0-9]);

  intsum=0;

  ArrayListlist=newArrayList

  if(dataStr[i]==0){

  dataStr[i]=1;

  }else{

  dataStr[i]=0;

  }

  }

  Stringstr=;

  for(inti=0;i

  str+=dataStr[i];

  }

  Stringres=Integer.valueOf(str,2).toString();

  returnres;

  }

  }

  18.功能描述:

判断一个字符串中的()是否配对

  输入:

if(a.equals(a))

  输出:

true

  packagecom.xcbeyond;

  /**

  *@authorxcbeyond

  *@date2021/05/1115:

50:

39

  */

  publicclassIsMatch{

  publicstaticvoidmain(String[]args){

  Stringstr=if(a.equals(a));

  System.out.println(isMatch(str));

  }

  publicstaticbooleanisMatch(Stringstr){

  booleanisMatch=false;

  char[]ch=str.toCharArray();

  intcount=0;

  for(inti=0;i

  if(ch[i]==(){

  count++;

  }elseif(ch[i]==)){

  count--;

  }

  }

  if(count==0){

  isMatch=true;

  }

  returnisMatch;

  }

  }

  19.功能描述:

查找一个字符串的子字符串集

  输入:

abab

  输出:

ababbaababab

  要求实现方法:

  publicListgetChildren(Stringdata)

  {

  Listlist=newArrayList();

  //TODO

  returnlist;

  }

  20.功能描述:

数组的循环移位,

  输入:

{a,b,c},2

  输出:

{b,c,a}

  要求实现方法:

  /**

  *data:

待循环数组

  *index:

移动位数

  */

  publicString[]getChildren(String[]data,intindex)

  {

  //TODO

  returnnull;

  }

  packagecom.xcbeyond;

  importjava.util.Arrays;

  /**

  *@authorxcbeyond

  *@date2021/05/129:

16:

56

  */

  publicclassDemo20{

  publicstaticvoidmain(String[]args){

  String[]data={a,b,c};

  System.out.println(Arrays.toString(getChildren(data,2)));

  }

  publicstaticString[]getChildren(String[]data,intindex){

  String[]resData=newString[data.length];

  for(inti=0;i

  resData[i]=data[index-1+i];

  }

  resData[resData.length-1]=data[0];

  returnresData;

  }

  }

  21.程序实现目标:

输入一个字符,将字符转换为小写,将其对应的ASCII值加5后,输出结果。

  程序要求:

若其值加5后的字符值大于z,将其转换成从a开始的'字符。

  输入:

A

  输出:

f

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/129:

31:

45

  */

  publicclassDemo21{

  publicstaticvoidmain(String[]args){

  System.out.println(parseChar(X));

  }

  publicstaticcharparseChar(charch){

  charresCh=a;

  resCh=(char)(Character.toLowerCase(ch)+5);

  if(resChz){

  resCh=(char)(resCh-26);

  }

  returnresCh;

  }

  }

  22.要求:

将一个二维数组进行逆序,逆序后所有的元素行列不定,进行随机排列

  ①先把数组每一行逆序

  ②再把逆序后每一行进行随机排列

  如:

{{4,3,32,5},{1,2,3,4},{9,6,5,4}};

  604659

  3421

  54323

  packagecom.xcbeyond;

  importjava.util.Random;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/129:

55:

26

  */

  publicclassDemo22{

  publicstaticvoidmain(String[]args){

  int[][]arr={{4,3,32,5},{1,2,3,4},{9,6,5,4}};

  int[][]arr2=arrRandomReverse(arr);

  for(inti=0;i

  for(intj=0;j

  System.out.print(arr2[i][j]+);

  }

  System.out.println();

  }

  }

  publicstaticint[][]arrRandomReverse(int[][]arr){

  int[][]resArr=newint[arr.length][];

  for(inti=0;i

  resArr[arr.length-1-i]=arr[i];

  }

  Randomr=newRandom();

  for(inti=0;i

  for(intj=0;j

  intp=r.nextInt(resArr[i].length);

  inttmp;

  tmp=resArr[i][j];

  resArr[i][j]=resArr[i][p];

  resArr[i][p]=tmp;

  }

  }

  returnresArr;

  }

  }

  23.根据输入m数据,找出str的m个字符的所有字符串

  例如abcm=2

  abacbc

  abcdm=3

  abcacdbcdabd

  publicArrayListperenum(Stringstr,intm)

  {

  returnnull;

  }

  24.分解质因数

  eg:

输入28

  输出2*2*7

  25.n个长度的字符串中取m个长度的组合

  26.二维数组转置

  例:

123

  456

  转置

  14

  25

  36

  packagecom.xcbeyond;

  /**

  *@authorxcbeyond

  *@date2021/05/1210:

56:

04

  */

  publicclassDemo26{

  publicstaticvoidmain(String[]args){

  int[][]arr={{4,3,32,5},{1,2,3,4},{9,6,5,4}};

  int[][]arr2=arrayReverse(arr);

  for(inti=0;i

  for(intj=0;j

  System.out.print(arr2[i][j]+);

  }

  System.out.println();

  }

  }

  publicstaticint[][]arrayReverse(int[][]arr){

  int[][]resArr=newint[arr[0].length][arr.length];

  for(inti=0;i

  for(intj=0;j

  resArr[i][j]=arr[j][i];

  }

  }

  returnresArr;

  }

  }

  27.功能描述:

输入字符串,将该字符串中数字放到非数字的后面,并保持原有顺序不变。

  例如:

h3a2p0p1y----------happy3201

  publicStringchildStr(StringinputStr){

  }

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/1211:

02:

27

  */

  publicclassDemo27{

  publicstaticvoidmain(String[]args){

  Stringstr=h3a2p0p1y;

  System.out.println(childStr(str));

  }

  publicstaticStringchildStr(StringinputStr){

  StringnumStr=;

  Stringstr=;

  StringnumRegex=[0-9];

  StringstrRegex=[a-zA-Z];

  for(inti=0;i

  if((inputStr.charAt(i)+).matches(numRegex)){

  numStr+=inputStr.charAt(i);

  }elseif((inputStr.charAt(i)+).matches(strRegex)){

  str+=inputStr.charAt(i);

  }

  }

  returnstr+numStr;

  }

  }

  28.输入一个身份证号码(15位和18位)和一个年份,计算现在的年龄(忽略非法参数)

  eg:

6106181990010202152021

  输出:

21

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/1211:

14:

56

  */

  publicclassDemo28{

  publicstaticvoidmain(String[]args){

  Stringid=610618199001020215;

  System.out.println(countAge(id,2021));

  }

  publicstaticintcountAge(StringID,intdate){

  StringbirthDate=;

  if(ID.length()==15){

  birthDate=ID.substring(3,7);

  }elseif(ID.length()==18){

  birthDate=ID.substring(6,10);

  }

  intage=0;

  age=date-Integer.parseInt(birthDate);

  returnage;

  }

  }

  29.输入一个字符串,如果是小写则转换成相应的大写字母的后五位,如果是VWXYZ则转换成abcde,其他的都不变,例如:

"aDsR154+-/.'则应该输出为"FDXR154+-/.'

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/1213:

39:

20

  */

  publicclassDemo29{

  publicstaticvoidmain(String[]args){

  Stringstr=aDsR154+-/.;

  System.out.println(parseStr(str));

  }

  publicstaticStringparseStr(Stringstr){

  StringBuffersb=newStringBuffer();

  chartmp;

  for(inti=0;i

  if(str.charAt(i)=astr.charAt(i)=z){

  tmp=(char)(Character.toUpperCase(str.charAt(i))+5);

  if(tmpZ){

  tmp=(char)(tmp-26);

  }

  sb.append(tmp);

  }else{

  sb.append(str.charAt(i));

  }

  }

  returnsb.toString();

  }

  }

  30.字母转换(完成给出类中的方法):

  要求:

  1、传入大写字母,返回小写字母。

  2、返回的小写字母应为该大写字母对应的小写字母后第五个小写字母,

  例:

出入A,则返回f.

  3、若按2中的要求返回的字母超过z,则超过1返回a,超过2返回b,依次类推;

  publicclasstest{

  publicstaticvoidmain(String[]args)

  {

  //可写测试代码

  }

  //需要完成的方法

  publiccharupperToLower(charupperCase)

  {

  //完成代码

  }

  }

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/1214:

05:

49

  */

  publicclassDemo30{

  publicstaticvoidmain(String[]args){

  charch=A;

  System.out.println(upperToLower(ch));

  }

  publicstaticcharupperToLower(charupperCase){

  charresCh=a;

  resCh=(char)(Character.toLowerCase(upperCase)+5);

  if(resChz){

  resCh=(char)(resCh-26);

  }

  returnresCh;

  }

  }

  31.删除一个字符串里出现次数最多的子字符串

  如果有多个出现次数相同的并且出现次数最多则将多个全部删除比如abbccd得到结果ad

  32.判断字符串首字母就大写,非首字母小写

  1、如输入Good返回TRUE

  2、过程中不需要输出任何IO流。

  33.将一个英文语句以单词为单位逆序排放。

例如"Iamaboy',逆序排放后为"boyaamI'

  所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符

  接口说明

  /**

  *反转句子

  *

  *@paramsentence原句子

  *@return反转后的句子

  */

  publicStringreverse(Stringsentence);

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/1214:

23:

12

  */

  publicclassDemo33{

  publicstaticvoidmain(String[]args){

  Stringstr=Iamaboy;

  System.out.println(reverse(str));

  }

  publicstaticStringreverse(Stringsentence){

  Stringregex=[*];

  String[]ch=sentence.split(regex);

  StringBuffersb=newStringBuffer();

  for(inti=ch.length-1;i=0;i--){

  sb.append(ch[i]+);

  }

  returnsb.toString();

  }

  }

  34.题目背景

  写出一个程序,接受一个浮点数值,输出该数值的近似整数值。

如果小数点后数值大于等于5,向上取整;小于5,则向下取整

  接口

  intround(doubled)

  举例

  -4.5四舍五入的结果是-4

  4.4四舍五入的结果是4

  packagecom.xcbeyond;

  /**

  *

  *@authorxcbeyond

  *@date2021/05/1214:

32:

50

  */

  publicclassDemo34{

  publicstaticvoidmain(String[]args){

  doubled=3.65;

  System.out.println(round(d));

  }

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1