在字符串Android中添加int值

时间:2017-03-26 19:56:21

标签: android

enter image description here

我无法在字符串中添加int值,我看不出原因。

字符串已经被bundle发送到第二个活动,现在显示在TextView中我需要一个int字符串的总值。

但是Android总是崩溃,我尝试了很多不同的选项但却看不出为什么它不起作用。一个简单的for循环应该起作用:sum = sum + myArr [i]。

7 个答案:

答案 0 :(得分:2)

<h2 class="section-title desktop-12" style="text-align: center;"></h2> <p><img src="//cdn.shopify.com/s/files/1/1317/8733/files/PHOTOGRFR_JoinTheTribe_1920x500_8f70f303-f8ac-4d6a-9c52-ae8cd939349d.jpg?v=1490462024" alt="Join The Tribe" /></p> <p> </p> <style><!-- .container { display: inline-block; position: relative; width: 30%; margin: auto; } .image { display: block; width: 100%; height: auto; } .overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0; transition: .5s ease; background-color: #f03d41; } .container:hover .overlay { opacity: 1; } .text { color: white; font-size: 20px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); } --></style> <div class="container"><img src="https://cdn.shopify.com/s/files/1/1317/8733/files/Creative.jpg?5705585986642973725" alt="Creative" class="image" /> <div class="overlay"><img src="https://cdn.shopify.com/s/files/1/1317/8733/files/Creative_Hover.jpg?5705585986642973725" alt="CreativeHover" class="image" /></div> </div> <div class="container"><img src="https://cdn.shopify.com/s/files/1/1317/8733/files/Brand_Rep.jpg?5705585986642973725" alt="Brand_Rep" class="image" /> <div class="overlay"><img src="https://cdn.shopify.com/s/files/1/1317/8733/files/Brand_Rep_Hover.jpg?5705585986642973725" alt="Brand_RepHover" class="image" /></div> </div> <div class="container"><img src="https://cdn.shopify.com/s/files/1/1317/8733/files/Influencer.jpg?5705585986642973725" alt="Influencer" class="image" /> <div class="overlay"><img src="https://cdn.shopify.com/s/files/1/1317/8733/files/Influencer_Hover.jpg?5705585986642973725" alt="InfluencerHover" class="image" /></div> </div>有多个重载。当您输入数字时,系统正在使用this,假设该数字实际上是资源ID。您应该使用setText()

答案 1 :(得分:2)

尝试此操作可能有帮助

    int sum=0;
    for(int i=0;i<myArr.length;i++){
        sum=sum+Integer.valueOf(myArr[i]);
    }
    Log.v("@@@WWe"," Sum :"+sum);
    textView3.setText(sum); 

答案 2 :(得分:1)

textView3.setText(" "+sum)而不是textView3.setText(sum)上使用此功能,这可以解决问题

答案 3 :(得分:0)

TextView期望String作为参数。 您可以通过将其类型化为String或仅添加&#34;&#34;来实现它。在你的int(sum)之前或之后。

textView3.setText(sum+"");

答案 4 :(得分:0)

请勿使用Integer.valueOf(string),因为它会返回Integer对象。而是使用Integer.parseInt(string),它返回一个intvalueOf()包装parseInt()

使用valueOf()parseInt()都必须抓住NumberFormatException。所以尝试

int sum = 0;

try
{

    for (int i = 0; i < myArr.length; i++)
    {
        sum += Integer.parseInt(myArr[i]);
    }

    textView3.setText(sum);
}
catch (NumberFormatException exception)
{
    // Handle exception.
}

答案 5 :(得分:0)

textView3.setText() 该值不能设置int类型,应为String类型,因此请尝试 texView3.setText(num+"")

答案 6 :(得分:0)

我认为您可以使用它来解决您的问题。

for (int i = 0; i < 5; i++){
      System.out.println(String.format("sum%s", String.valueOf(i)));
    }

对我来说效果很好。 好幸运