【问题标题】:How do you log an int on Android?你如何在Android上记录一个int?
【发布时间】:2011-05-28 08:13:15
【问题描述】:

我正在记录这个:

Log.d(getClass().getName(), "BLA BLA BLA");

如何显示int 值? C的%d相当于什么?

【问题讨论】:

    标签: android logging


    【解决方案1】:

    你可以使用字符串连接:

    Log.d(getClass().getName(), "value = " + intVar);
    

    或者更灵活(和c-style printf类似)可以使用Java的String.format():

    Log.d(getClass().getName(), String.format("value = %d", intVar));
    

    【讨论】:

      【解决方案2】:
      String.valueOf()
      

      如果您想要各种对象的字符串表示,则需要。

      顺便说一句,我建议使用slf4j for Android。这样,您不必每次都将类名作为第一个参数传递。

      【讨论】:

        【解决方案3】:

        或者你可以使用

        Integer.toString(intVar);
        

        假设intVarInteger 而不是原始int

        【讨论】:

          【解决方案4】:
             Log.i("value entered", Float.toString(finalValue));
          

          【讨论】:

            【解决方案5】:

            Android 的日志记录本机不支持格式化的 printf 样式字符串。通常你只使用 valueOf 或 toString 并使用字符串连接,但如果你必须使用Formatter

            【讨论】:

              【解决方案6】:

              第一个导入日志; 导入android.util.Log;

              然后创建方法并检查:

              @Override
              protected void onResume() {
                  super.onResume();
                  Log.e("Check","We are in Resume");
              }
              
              @Override
              protected void onPause() {
                  super.onPause();
                  Log.e("Check","We are in Pause");
              }
              
              @Override
              protected void onStop() {
                  super.onStop();
                  Log.e("Check","We are in Stop");
              }
              
              @Override
              protected void onDestroy() {
                  super.onDestroy();
                  Log.e("Check","We are in Destroy");
              }
              
              @Override
              protected void onStart() {
                  super.onStart();
                  Log.e("Check","We are in Star");
              }
              
              @Override
              protected void onRestart() {
                  super.onRestart();
                  Log.e("Check","We are in ReStar");
              }
              

              【讨论】:

                【解决方案7】:

                使用区域设置来避免额外的区域设置警告 -

                Log.d(getClass().getName(), String.format(Locale.US, "value = %d", intVar));
                

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 2019-03-18
                  • 1970-01-01
                  • 2019-09-10
                  • 1970-01-01
                  • 1970-01-01
                  • 2014-12-23
                  • 2018-07-04
                  相关资源
                  最近更新 更多