相关疑难解决方法(0)

如何在不获取"SomeType @ 2f92e0f4"的情况下打印我的Java对象?

我有一个类定义如下:

public class Person {
  private String name;

  // constructor and getter/setter omitted
}
Run Code Online (Sandbox Code Playgroud)

我试图打印我的班级实例:

System.out.println(myPerson);
Run Code Online (Sandbox Code Playgroud)

但我得到了以下输出:com.foo.Person@2f92e0f4.

当我尝试打印一个Person对象数组时发生了类似的事情:

Person[] people = //...
System.out.println(people); 
Run Code Online (Sandbox Code Playgroud)

我得到了输出: [Lcom.foo.Person;@28a418fc

这个输出是什么意思?如何更改此输出以使其包含我的人名?我如何打印我的对象集合?

注意:这是关于此主题的规范问答.

java string object tostring

283
推荐指数
8
解决办法
29万
查看次数

在存储之前和从KeyStore检索之后,SecretKey的Base64编码值不相同

我真的很困惑为什么编码值不同

这是完整的代码

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.security.Key;
import java.security.KeyStore;

import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;

import org.bouncycastle.util.encoders.Base64;

public class KeyStoreDemo {

    private static final String KEY_STORE_TYPE = "JCEKS";
    private static final String KEY_STORE_NAME = "sampleKeyStore.store";
    private static final String KEY_STORE_PASSWORD = "letmein";


    public static void main(String[] args) throws Exception {
        File storeFile = new File(KEY_STORE_NAME);
        storeFile.createNewFile();

        //Create a keystore
        createKeyStore(KEY_STORE_TYPE, storeFile,KEY_STORE_PASSWORD);

        //Generate a key and store it in keystore
        KeyStore keyStore = loadKeyStore(KEY_STORE_TYPE,storeFile,KEY_STORE_PASSWORD);      


        // Get the KeyGenerator …
Run Code Online (Sandbox Code Playgroud)

java encryption base64 encoding keystore

2
推荐指数
1
解决办法
5263
查看次数

标签 统计

java ×2

base64 ×1

encoding ×1

encryption ×1

keystore ×1

object ×1

string ×1

tostring ×1