📌  相关文章
📜  Java中的 CompoundName getSuffix() 方法和示例

📅  最后修改于: 2022-05-13 01:54:27.280000             🧑  作者: Mango

Java中的 CompoundName getSuffix() 方法和示例

javax.naming.CompoundName 类getSuffix()方法用于获取复合名称对象,其组件由该复合名称中的组件的后缀组成。我们需要从这个复合名称对象中提取 Suffix 的位置作为参数传递。返回的复合名称对象和此复合名称对象共享相同的语法。如果我们对此复合名称进行任何不会影响返回的名称的更改,反之亦然。

句法:

public Name getSuffix(int posn)

参数:此方法接受 posn,它是要开始的组件的从 0 开始的索引。必须在 [0, size()] 范围内。

返回值:此方法返回一个复合名称,该名称由 [posn, size()) 范围内的索引处的组件组成。如果 posn 等于 size(),则返回一个空的复合名称。

异常:如果 posn 超出指定范围,则此方法抛出 ArrayIndexOutOfBoundsException。

下面的程序说明了 CompoundName.getSuffix() 方法:
方案一:

// Java program to demonstrate
// CompoundName.getSuffix()
  
import java.util.Properties;
import javax.naming.CompoundName;
import javax.naming.InvalidNameException;
  
public class GFG {
    public static void main(String[] args)
        throws InvalidNameException
    {
  
        // need properties for CompoundName
        Properties props = new Properties();
        props.put("jndi.syntax.separator", "@");
        props.put("jndi.syntax.direction",
                  "left_to_right");
  
        // create compound name object
        CompoundName CompoundName1
            = new CompoundName(
                "1@2@3@4@5@6@7",
                props);
  
        // apply getSuffix()
        CompoundName newCompoundName
            = (CompoundName)
                  CompoundName1.getSuffix(3);
  
        // print value
        System.out.println(
            "New CompoundName Object: "
            + newCompoundName);
    }
}
输出:
New CompoundName Object: 4@5@6@7

方案二:

// Java program to demonstrate
// CompoundName.getSuffix() method
  
import java.util.Properties;
import javax.naming.CompoundName;
import javax.naming.InvalidNameException;
  
public class GFG {
    public static void main(String[] args)
        throws InvalidNameException
    {
  
        // need properties for CompoundName
        Properties props = new Properties();
        props.put("jndi.syntax.separator", "/");
        props.put("jndi.syntax.direction",
                  "left_to_right");
  
        // create compound name object
        CompoundName CompoundName1
            = new CompoundName(
                "c/e/d/v/a/b/z/y/x/f",
                props);
  
        // apply getSuffix()
        CompoundName newCompoundName
            = (CompoundName)
                  CompoundName1.getSuffix(8);
  
        // print value
        System.out.println(
            "New CompoundName Object: "
            + newCompoundName);
    }
}
输出:
New CompoundName Object: x/f

参考资料:https://docs.oracle.com/javase/10/docs/api/javax/naming/CompoundName.html#getSuffix(int)