java程序挑战_某网站的编程挑战题目 Java版本的 strToInt

news/2024/5/10 4:47:36/文章来源:https://blog.csdn.net/weixin_42513944/article/details/114755152

题目详情

输入一个表示整数的字符串,把该字符串转换成整数并输出,例如输入字符串"345",则输出整数345。

请完成函数StrToInt,实现字符串转换成整数的功能。

友情提醒:

提交代码之前,请复查下你的程序,比如当给的字符串是如左边图片所示的时候,有考虑到么?

当然,它们各自对应的正确输出如右边图片所示(假定你是在32位系统下,编译环境是VS2008以上)

input:                                          output:

cf0ac818442ecb1eacf85c417a88b807.png                          

a0ae1e7d41a8b710e1f6e8d1c4f5c66f.png 

注:以上只是部分测试数据,不代表上述数据通过了,即挑战成功。

答题说明

完成功能函数StrToInt即可,但不要去改动函数名,参数,至于main函数是为方便你在提交代码之前进行在线编译测试;

不得用库函数atoi。

我提交的代码:

public static int StrToInt(String str)

{

int d = 0;

// filter 1: "" " " "++" "--" "+ " "- "

if (str == null || "".equals(str.trim()) || str.indexOf("++")>=0

|| str.indexOf("--")>=0 || str.indexOf("+ ")>=0 || str.indexOf("- ")>=0)    {

return d;

}

str = str.trim();

// filter 2: only number

Character cur = null;

StringBuffer sb = new StringBuffer();

for(int i=str.length()-1;i>0;i--){

cur = str.charAt(i);

if ( cur < '0' || cur > '9' ){

sb = new StringBuffer();

continue;

}

sb.insert(0,cur);

}

// the first char: + or - or number or other

int flag = 1;

if (str.charAt(0)=='-'){

flag = -1;

}else if(str.charAt(0)=='+'){

// nothing

}else if( str.charAt(0)>='0' && str.charAt(0)<='9'){

sb.insert(0, str.charAt(0));

}else{

sb = new StringBuffer();

}

if (sb.length()<1){

return d;

}

// border value

try{

long dd = Long.parseLong(sb.toString()) * flag;

if (dd>Integer.MAX_VALUE){

return Integer.MAX_VALUE;

}

if(dd

return Integer.MIN_VALUE;

}

}catch(Exception e){

e.printStackTrace();

}

// str to int

int f = 10;

int i=sb.length()-1;

d = sb.charAt(i)-'0';

while(--i>=0){

d += (sb.charAt(i)-'0') * f;

f = f * 10;

}

return d * flag;

}

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

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

相关文章

php网站首页打开的慢,最近解决客户网站首页打开慢的体会

最近解决客户网站首页打开慢的体会首先打开客户网站首页&#xff0c;在index.php页面执行断点测试&#xff0c;测试出一条SQL语句执行缓慢&#xff1a;然后复制这个SQL语句到数据库里执行了一下&#xff0c;发现整整用了30多秒&#xff0c;用测试命令测试出结果如下&#xff1a…

esp8266 rtos 开发环境 ubuntu_写个网站 - Ubuntu开发环境搭建

下班回家的路上想着要不写个网站&#xff0c;然后&#xff0c;要不把做网站的过程写下来吧&#xff0c;然后,回来后&#xff0c;折腾折腾&#xff0c;坐到电脑前&#xff0c;开始打字。服务器原来腾讯云上有一个Ubuntu服务器&#xff0c;现在全部重新开始。基于安全考虑&#x…

linux discuz 目录权限设置,Linux下 网站目录读写权限的设置

Linux下 网站目录读写权限的设置作者&#xff1a;admin 发布于&#xff1a;2017-4-25 9:39 Tuesday网站目录文件权限的设置对网站的安全至关重要&#xff0c;下面简单介绍网站目录文件权限的基本设定。我们假设http服务器运行的用户和用户组是www-data&#xff0c;网站用户为ww…

怎样用sourceTree将自己本地的项目上传到github网站上

前言&#xff1a;GitHub 是基于 Git 的一个代码托管网站。开发者可以将代码在 GitHub 上开源&#xff0c;可以浏览其它项目的代码。 准备工作&#xff1a;1、github网站账号。2、sourceTree软件。 一、在github网站上新建一个仓库 方法很简单&#xff0c;你可以参考官网给出的教…

宝塔linux怎么安装asp网站,宝塔面板创建网站:宝塔linux面板添加网站详细教程...

如何利利用宝塔面板来创建网站&#xff1f;其实&#xff0c;宝塔面板操作还是比较简单的&#xff0c;宝塔windows面板和Linux面板添加网站的步骤是差不多的&#xff0c;不过为了让第一次接触宝塔Linux面板的站长更容易理解和学习&#xff0c;所以就分享一下Linux面板创建站点添…

数据访问之注册审核(重点是审核!!!)常用于企业、公司、医院等网站---2017-05-04...

关于审核&#xff0c;如发表文章的审核、员工请假的审核、药品申请的审核等等&#xff0c;代码大同小异。下面来看一下代码是怎么写的&#xff1a; 用到的数据库:hw_0408 用到的表&#xff1a;users 首先&#xff0c;实现注册功能&#xff08;zhece.php chuli.php&#xff…

访问Oracle em https https://localhost:1158/em 报访问网页提示此网站的安全证书有问题解决方法

访问Oracle em https https://localhost:1158/em 报访问网页提示此网站的安全证书有问题 因为ie10、ie11等对不安全的链接&#xff0c;管理更加严格&#xff0c;低安全级别&#xff0c;不能解决问题&#xff0c; 解决办法&#xff1a; 1、采用google 浏览器&#xff0c;Chrom…

思科模拟器企业网站服务器配置,cisco模拟器配置域名web服务器

cisco模拟器配置域名web服务器 内容精选换一换防护域名开启WEB基础防护之后&#xff0c;访问网站如果出现500&#xff0c;502&#xff0c;504等报错&#xff0c;并且显示Web应用防火墙和网站连接失败&#xff0c;如图1所示。可能的原因比较多&#xff0c;如防火墙拦截、源站配置…

建站手册-语义网:语义网实例

ylbtech-建站手册-语义网&#xff1a;语义网实例1.返回顶部 1、http://www.w3school.com.cn/semweb/semantic_example.asp2、2.返回顶部1、语义网。一个简单的应用实例。 购买和出售二手车 假设某个语义网系统用于通过因特网管理二手车的销售和购买。 该系统可能包括两个主要的…

后台填充_如何才能填充发布好一个网站?

我们知道 网站做完之后 需要进行内容的填充&#xff0c;丰富的、高质量的网站内容会提高网站的搜索引擎排名&#xff0c;增加点击量&#xff0c;从而给企业带来很好品牌宣传效果和可观的经济收益。那么我们填充时应该注意哪些&#xff1f;这里来列举几点1、上传图片时要按照设计…

ercharts一个页面能放几个_网站搜索排名,为什么需要高点击率页面?

在做SEO的过程中&#xff0c;我们经常会遇到这样的情况&#xff1a; ①有关键词排名&#xff0c;网站流量非常少。 ②页面关键词排名&#xff0c;长期停滞不前。 ③整站权重很难得到有效的提升&#xff0c;即使你有大量关键词排名。 面对这样的情况&#xff0c;你可能会想尽各种…

java做一个数据库网站,用javaSwing和mysql数据库做的一个登录页面

用javaSwing和mysql数据库做的一个登录页面用javaSwing和mysql数据库做的一个登录页面一&#xff1a;首先在eclipse中新建一个java工程二&#xff1a;然后新建一个包&#xff0c;并且在包中新建两个类&#xff1a;一个事登录用的界面(Login)类&#xff0c;一个事连接数据库的(j…

win10 iis6写php接口,小编介绍win10 IIS 6.0安装和网站架设的方法图文教程

最近有些朋友反馈小编问win10 IIS 6.0安装和网站架设的方法是什么。IIS 6.0 和 Windows Server 2003在网络应用服务器的管理、可用性、可靠性、安全性、性能与可扩展性方面提供了许多新的功能。IIS 6.0同样增强了网络应用的开发与国际性支持。那么接下来小编就为大家说说 IIS 6…

linux个人网站发布,51CTO博客-专业IT技术博客创作平台-技术成就梦想

发布个人站点1&#xff0e;创建个人用户和站点[rootlocalhost ~]# useradd baidu[rootlocalhost ~]# passwd baiduChanging password for user baidu[rootlocalhost ~]# su - baidu[baidulocalhost ~]$ mkdir public_html[baidulocalhost ~]$ cd public_html/[baidulocalhost p…

GitHub+Hexo 搭建个人网站

本文已同步到专业技术网站 www.sufaith.com, 该网站专注于前后端开发技术与经验分享, 包含Web开发、Nodejs、Python、Linux、IT资讯等板块. 一、创建GitHub Pages站点 GitHub Pages是一种静态站点托管服务&#xff0c;旨在直接从GitHub仓库托管您的个人&#xff0c;组织或项目页…

提高网站加载速度的3项黄金守则

如何优化网页加载速度是每个前端开发工程师需要了解的&#xff0c;也是前端开发工程师需要具备的基本条件。 优化网站加载速度的原理主要是减少网站文件的大小&#xff0c;减少HTTP请求数。网站文件越小&#xff0c;浏览器加载页面会比较轻松&#xff0c;打开页面的速度也会提升…

wordpress如何让百度快速收录_网站文章如何快速被收录?百度快速收录功能可以试一下...

摘要&#xff1a;近日百度站长管理平台推出了快速收录功能&#xff0c;据了解该功能目前仅对部分优质的站点开放&#xff0c;但是开通熊掌号的站点也可以直接继承过来的。下面让我们一起来了看看吧。一、百度快速收录上线2020年5月13日下午&#xff0c;百度站长管理平台上线了快…

java开发流程图_开发者常用的一些工具类网站

本文主要收集和记录一些平时开发工作中经常用到的工具类网站。当然&#xff0c;GitHub、StackOverflow 之类知名度太高的就不赘述了。ProcessOnProcessOn - 免费在线作图&#xff0c;思维导图&#xff0c;流程图&#xff0c;实时协作​www.processon.com在线画图&#xff0c;思…

网站源码(二)

开始失业了,要人的朋友关照一下.对上次源码的完善.请大家在这下载最新版本源码.欢迎来信一起交流,一起进步.这是我的写的一些作品,是一个企业网站的后台和前台,主要实现了新闻发布和人才招聘,还有公司简介等,本是公司改版时用的,由于没能用上,现在提供全部源码,希望对想更版公司…

关于网页*静态化*及SEO问题的一些补充(转)

http://www.cnblogs.com/JeffreyZhao/archive/2009/07/06/more-on-page-statilization-and-seo.html  前一篇讨论“静态页”的文章反响不错&#xff0c;不少朋友发表了自己的看法&#xff0c;也给老赵更多的想法。虽然也在前一篇文章后面回复了不少内容&#xff0c;但是就以往…